Step 1: Load data (bears without splitting) that was used in Phase I
! unzip bearsWithoutSplitting.zip
Archive: bearsWithoutSplitting.zip creating: bearsWithoutSplitting/ creating: bearsWithoutSplitting/polar/ inflating: bearsWithoutSplitting/.DS_Store inflating: __MACOSX/bearsWithoutSplitting/._.DS_Store creating: bearsWithoutSplitting/panda/ creating: bearsWithoutSplitting/grizzly/ inflating: bearsWithoutSplitting/polar/polar_1198.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1198.jpg inflating: bearsWithoutSplitting/polar/polar_1365.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1365.png inflating: bearsWithoutSplitting/polar/polar_1173.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1173.jpg inflating: bearsWithoutSplitting/polar/polar_1167.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1167.jpg inflating: bearsWithoutSplitting/polar/polar_1359.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1359.jpg inflating: bearsWithoutSplitting/polar/polar_1371.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1371.jpg inflating: bearsWithoutSplitting/polar/polar_1403.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1403.jpg inflating: bearsWithoutSplitting/polar/polar_1239.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1239.jpg inflating: bearsWithoutSplitting/polar/polar_1205.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1205.jpg inflating: bearsWithoutSplitting/polar/polar_1211.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1211.jpg inflating: bearsWithoutSplitting/polar/polar_1007.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1007.jpg inflating: bearsWithoutSplitting/polar/polar_1013.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1013.jpg inflating: bearsWithoutSplitting/polar/polar_1012.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1012.jpg inflating: bearsWithoutSplitting/polar/polar_1006.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1006.jpg inflating: bearsWithoutSplitting/polar/polar_1210.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1210.jpg inflating: bearsWithoutSplitting/polar/polar_1204.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1204.jpg inflating: bearsWithoutSplitting/polar/polar_1238.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1238.jpg inflating: bearsWithoutSplitting/polar/polar_1402.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1402.jpg inflating: bearsWithoutSplitting/polar/polar_1364.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1364.jpg inflating: bearsWithoutSplitting/polar/polar_1370.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1370.jpg inflating: bearsWithoutSplitting/polar/polar_1358.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1358.jpg inflating: bearsWithoutSplitting/polar/polar_1166.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1166.jpg inflating: bearsWithoutSplitting/polar/polar_1172.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1172.jpg inflating: bearsWithoutSplitting/polar/polar_1199.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1199.jpg inflating: bearsWithoutSplitting/polar/polar_1158.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1158.jpg inflating: bearsWithoutSplitting/polar/polar_1164.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1164.jpg inflating: bearsWithoutSplitting/polar/polar_1170.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1170.jpg inflating: bearsWithoutSplitting/polar/polar_1399.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1399.jpg inflating: bearsWithoutSplitting/polar/polar_1366.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1366.jpg inflating: bearsWithoutSplitting/polar/polar_1400.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1400.jpg inflating: bearsWithoutSplitting/polar/polar_1372.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1372.jpg inflating: bearsWithoutSplitting/polar/polar_1212.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1212.jpg inflating: bearsWithoutSplitting/polar/polar_1206.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1206.jpg inflating: bearsWithoutSplitting/polar/polar_1038.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1038.jpg inflating: bearsWithoutSplitting/polar/polar_1010.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1010.jpg inflating: bearsWithoutSplitting/polar/polar_1004.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1004.jpg inflating: bearsWithoutSplitting/polar/polar_1005.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1005.jpg inflating: bearsWithoutSplitting/polar/polar_1011.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1011.jpg inflating: bearsWithoutSplitting/polar/polar_1039.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1039.jpg inflating: bearsWithoutSplitting/polar/polar_1207.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1207.jpg inflating: bearsWithoutSplitting/polar/polar_1213.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1213.jpg inflating: bearsWithoutSplitting/polar/polar_1373.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1373.jpg inflating: bearsWithoutSplitting/polar/polar_1367.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1367.jpg inflating: bearsWithoutSplitting/polar/polar_1401.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1401.jpg inflating: bearsWithoutSplitting/polar/polar_1398.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1398.jpg inflating: bearsWithoutSplitting/polar/polar_1171.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1171.jpg inflating: bearsWithoutSplitting/polar/polar_1165.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1165.jpg inflating: bearsWithoutSplitting/polar/polar_1159.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1159.jpg inflating: bearsWithoutSplitting/polar/polar_1363.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1363.png inflating: bearsWithoutSplitting/polar/polar_1161.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1161.jpg inflating: bearsWithoutSplitting/polar/polar_1175.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1175.jpg inflating: bearsWithoutSplitting/polar/polar_1149.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1149.jpg inflating: bearsWithoutSplitting/polar/polar_1388.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1388.jpg inflating: bearsWithoutSplitting/polar/polar_1405.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1405.jpg inflating: bearsWithoutSplitting/polar/polar_1377.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1377.jpg inflating: bearsWithoutSplitting/polar/polar_1411.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1411.jpg inflating: bearsWithoutSplitting/polar/polar_1217.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1217.jpg inflating: bearsWithoutSplitting/polar/polar_1203.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1203.jpg inflating: bearsWithoutSplitting/polar/polar_1015.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1015.jpg inflating: bearsWithoutSplitting/polar/polar_1001.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1001.jpg inflating: bearsWithoutSplitting/polar/polar_1029.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1029.jpg inflating: bearsWithoutSplitting/polar/polar_1028.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1028.jpg inflating: bearsWithoutSplitting/polar/polar_1000.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1000.jpg inflating: bearsWithoutSplitting/polar/polar_1014.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1014.jpg inflating: bearsWithoutSplitting/polar/polar_1202.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1202.jpg inflating: bearsWithoutSplitting/polar/polar_1216.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1216.jpg inflating: bearsWithoutSplitting/polar/polar_1376.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1376.jpg inflating: bearsWithoutSplitting/polar/polar_1410.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1410.jpg inflating: bearsWithoutSplitting/polar/polar_1404.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1404.jpg inflating: bearsWithoutSplitting/polar/polar_1362.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1362.jpg inflating: bearsWithoutSplitting/polar/polar_1389.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1389.jpg inflating: bearsWithoutSplitting/polar/polar_1148.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1148.jpg inflating: bearsWithoutSplitting/polar/polar_1174.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1174.jpg inflating: bearsWithoutSplitting/polar/polar_1160.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1160.jpg inflating: bearsWithoutSplitting/polar/polar_1360.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1360.png inflating: bearsWithoutSplitting/polar/polar_1189.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1189.jpg inflating: bearsWithoutSplitting/polar/polar_1348.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1348.png inflating: bearsWithoutSplitting/polar/polar_1176.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1176.jpg inflating: bearsWithoutSplitting/polar/polar_1162.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1162.jpg inflating: bearsWithoutSplitting/polar/polar_1374.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1374.jpg inflating: bearsWithoutSplitting/polar/polar_1406.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1406.jpg inflating: bearsWithoutSplitting/polar/polar_1200.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1200.jpg inflating: bearsWithoutSplitting/polar/polar_1214.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1214.jpg inflating: bearsWithoutSplitting/polar/polar_1228.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1228.jpg inflating: bearsWithoutSplitting/polar/polar_1002.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1002.jpg inflating: bearsWithoutSplitting/polar/polar_1016.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1016.jpg inflating: bearsWithoutSplitting/polar/polar_1017.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1017.jpg inflating: bearsWithoutSplitting/polar/polar_1003.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1003.jpg inflating: bearsWithoutSplitting/polar/polar_1229.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1229.png inflating: bearsWithoutSplitting/polar/polar_1215.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1215.jpg inflating: bearsWithoutSplitting/polar/polar_1201.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1201.jpg inflating: bearsWithoutSplitting/polar/polar_1349.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1349.jpg inflating: bearsWithoutSplitting/polar/polar_1407.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1407.jpg inflating: bearsWithoutSplitting/polar/polar_1375.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1375.jpg inflating: bearsWithoutSplitting/polar/polar_1163.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1163.jpg inflating: bearsWithoutSplitting/polar/polar_1177.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1177.jpg inflating: bearsWithoutSplitting/polar/polar_1188.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1188.jpg inflating: bearsWithoutSplitting/polar/polar_1361.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1361.png inflating: bearsWithoutSplitting/polar/polar_1138.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1138.jpg inflating: bearsWithoutSplitting/polar/polar_1110.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1110.jpg inflating: bearsWithoutSplitting/polar/polar_1104.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1104.jpg inflating: bearsWithoutSplitting/polar/polar_1312.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1312.jpg inflating: bearsWithoutSplitting/polar/polar_1306.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1306.jpg inflating: bearsWithoutSplitting/polar/polar_1299.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1299.jpg inflating: bearsWithoutSplitting/polar/polar_1266.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1266.jpg inflating: bearsWithoutSplitting/polar/polar_1272.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1272.jpg inflating: bearsWithoutSplitting/polar/polar_1058.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1058.jpg inflating: bearsWithoutSplitting/polar/polar_1064.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1064.jpg inflating: bearsWithoutSplitting/polar/polar_1070.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1070.jpg inflating: bearsWithoutSplitting/polar/polar_1071.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1071.jpg inflating: bearsWithoutSplitting/polar/polar_1065.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1065.jpg inflating: bearsWithoutSplitting/polar/polar_1059.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1059.jpg inflating: bearsWithoutSplitting/polar/polar_1273.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1273.jpg inflating: bearsWithoutSplitting/polar/polar_1267.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1267.jpg inflating: bearsWithoutSplitting/polar/polar_1298.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1298.jpg inflating: bearsWithoutSplitting/polar/polar_1307.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1307.jpg inflating: bearsWithoutSplitting/polar/polar_1313.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1313.jpg inflating: bearsWithoutSplitting/polar/polar_1105.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1105.jpg inflating: bearsWithoutSplitting/polar/polar_1111.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1111.jpg inflating: bearsWithoutSplitting/polar/polar_1139.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1139.jpg inflating: bearsWithoutSplitting/polar/polar_1107.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1107.jpg inflating: bearsWithoutSplitting/polar/polar_1113.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1113.jpg inflating: bearsWithoutSplitting/polar/polar_1339.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1339.jpg inflating: bearsWithoutSplitting/polar/polar_1305.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1305.jpg inflating: bearsWithoutSplitting/polar/polar_1311.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1311.jpg inflating: bearsWithoutSplitting/polar/polar_1259.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1259.jpg inflating: bearsWithoutSplitting/polar/polar_1271.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1271.jpg inflating: bearsWithoutSplitting/polar/polar_1265.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1265.jpg inflating: bearsWithoutSplitting/polar/polar_1098.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1098.jpg inflating: bearsWithoutSplitting/polar/polar_1073.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1073.jpg inflating: bearsWithoutSplitting/polar/polar_1067.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1067.jpg inflating: bearsWithoutSplitting/polar/polar_1066.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1066.jpg inflating: bearsWithoutSplitting/polar/polar_1099.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1099.jpg inflating: bearsWithoutSplitting/polar/polar_1264.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1264.jpg inflating: bearsWithoutSplitting/polar/polar_1270.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1270.jpg inflating: bearsWithoutSplitting/polar/polar_1258.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1258.jpg inflating: bearsWithoutSplitting/polar/polar_1310.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1310.jpg inflating: bearsWithoutSplitting/polar/polar_1304.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1304.jpg inflating: bearsWithoutSplitting/polar/polar_1338.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1338.jpg inflating: bearsWithoutSplitting/polar/polar_1112.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1112.jpg inflating: bearsWithoutSplitting/polar/polar_1106.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1106.jpg inflating: bearsWithoutSplitting/polar/polar_1102.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1102.jpg inflating: bearsWithoutSplitting/polar/polar_1116.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1116.jpg inflating: bearsWithoutSplitting/polar/polar_1300.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1300.jpg inflating: bearsWithoutSplitting/polar/polar_1314.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1314.jpg inflating: bearsWithoutSplitting/polar/polar_1328.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1328.jpg inflating: bearsWithoutSplitting/polar/polar_1274.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1274.jpg inflating: bearsWithoutSplitting/polar/polar_1260.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1260.jpg inflating: bearsWithoutSplitting/polar/polar_1248.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1248.jpg inflating: bearsWithoutSplitting/polar/polar_1089.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1089.jpg inflating: bearsWithoutSplitting/polar/polar_1076.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1076.jpg inflating: bearsWithoutSplitting/polar/polar_1062.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1062.jpg inflating: bearsWithoutSplitting/polar/polar_1063.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1063.jpg inflating: bearsWithoutSplitting/polar/polar_1077.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1077.jpg inflating: bearsWithoutSplitting/polar/polar_1088.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1088.jpg inflating: bearsWithoutSplitting/polar/polar_1249.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1249.jpg inflating: bearsWithoutSplitting/polar/polar_1261.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1261.jpg inflating: bearsWithoutSplitting/polar/polar_1275.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1275.jpg inflating: bearsWithoutSplitting/polar/polar_1329.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1329.jpg inflating: bearsWithoutSplitting/polar/polar_1315.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1315.jpg inflating: bearsWithoutSplitting/polar/polar_1301.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1301.jpg inflating: bearsWithoutSplitting/polar/polar_1117.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1117.jpg inflating: bearsWithoutSplitting/polar/polar_1103.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1103.jpg inflating: bearsWithoutSplitting/polar/polar_1115.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1115.jpg inflating: bearsWithoutSplitting/polar/polar_1101.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1101.jpg inflating: bearsWithoutSplitting/polar/polar_1129.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1129.jpg inflating: bearsWithoutSplitting/polar/polar_1317.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1317.jpg inflating: bearsWithoutSplitting/polar/polar_1303.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1303.jpg inflating: bearsWithoutSplitting/polar/polar_1288.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1288.jpg inflating: bearsWithoutSplitting/polar/polar_1263.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1263.jpg inflating: bearsWithoutSplitting/polar/polar_1277.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1277.jpg inflating: bearsWithoutSplitting/polar/polar_1061.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1061.jpg inflating: bearsWithoutSplitting/polar/polar_1075.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1075.jpg inflating: bearsWithoutSplitting/polar/polar_1049.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1049.jpg inflating: bearsWithoutSplitting/polar/polar_1048.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1048.jpg inflating: bearsWithoutSplitting/polar/polar_1074.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1074.jpg inflating: bearsWithoutSplitting/polar/polar_1060.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1060.jpg inflating: bearsWithoutSplitting/polar/polar_1276.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1276.jpg inflating: bearsWithoutSplitting/polar/polar_1262.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1262.jpg inflating: bearsWithoutSplitting/polar/polar_1289.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1289.jpg inflating: bearsWithoutSplitting/polar/polar_1302.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1302.jpg inflating: bearsWithoutSplitting/polar/polar_1316.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1316.jpg inflating: bearsWithoutSplitting/polar/polar_1128.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1128.jpg inflating: bearsWithoutSplitting/polar/polar_1100.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1100.jpg inflating: bearsWithoutSplitting/polar/polar_1114.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1114.jpg inflating: bearsWithoutSplitting/polar/polar_1119.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1119.jpg inflating: bearsWithoutSplitting/polar/polar_1131.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1131.jpg inflating: bearsWithoutSplitting/polar/polar_1125.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1125.jpg inflating: bearsWithoutSplitting/polar/polar_1333.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1333.jpg inflating: bearsWithoutSplitting/polar/polar_1327.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1327.jpg inflating: bearsWithoutSplitting/polar/polar_1284.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1284.jpg inflating: bearsWithoutSplitting/polar/polar_1290.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1290.jpg inflating: bearsWithoutSplitting/polar/polar_1247.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1247.jpg inflating: bearsWithoutSplitting/polar/polar_1253.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1253.jpg inflating: bearsWithoutSplitting/polar/polar_1086.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1086.jpg inflating: bearsWithoutSplitting/polar/polar_1092.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1092.jpg inflating: bearsWithoutSplitting/polar/polar_1079.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1079.jpg inflating: bearsWithoutSplitting/polar/polar_1045.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1045.jpg inflating: bearsWithoutSplitting/polar/polar_1051.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1051.jpg inflating: bearsWithoutSplitting/polar/polar_1050.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1050.jpg inflating: bearsWithoutSplitting/polar/polar_1044.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1044.jpg inflating: bearsWithoutSplitting/polar/polar_1078.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1078.jpg inflating: bearsWithoutSplitting/polar/polar_1093.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1093.jpg inflating: bearsWithoutSplitting/polar/polar_1087.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1087.jpg inflating: bearsWithoutSplitting/polar/polar_1252.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1252.jpg inflating: bearsWithoutSplitting/polar/polar_1246.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1246.jpg inflating: bearsWithoutSplitting/polar/polar_1291.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1291.jpg inflating: bearsWithoutSplitting/polar/polar_1285.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1285.jpg inflating: bearsWithoutSplitting/polar/polar_1326.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1326.jpg inflating: bearsWithoutSplitting/polar/polar_1332.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1332.jpg inflating: bearsWithoutSplitting/polar/polar_1124.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1124.jpg inflating: bearsWithoutSplitting/polar/polar_1130.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1130.jpg inflating: bearsWithoutSplitting/polar/polar_1118.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1118.jpg inflating: bearsWithoutSplitting/polar/polar_1126.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1126.jpg inflating: bearsWithoutSplitting/polar/polar_1132.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1132.jpg inflating: bearsWithoutSplitting/polar/polar_1318.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1318.jpg inflating: bearsWithoutSplitting/polar/polar_1324.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1324.jpg inflating: bearsWithoutSplitting/polar/polar_1330.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1330.jpg inflating: bearsWithoutSplitting/polar/polar_1293.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1293.jpg inflating: bearsWithoutSplitting/polar/polar_1287.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1287.jpg inflating: bearsWithoutSplitting/polar/polar_1278.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1278.jpg inflating: bearsWithoutSplitting/polar/polar_1250.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1250.jpg inflating: bearsWithoutSplitting/polar/polar_1244.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1244.jpg inflating: bearsWithoutSplitting/polar/polar_1091.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1091.jpg inflating: bearsWithoutSplitting/polar/polar_1085.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1085.jpg inflating: bearsWithoutSplitting/polar/polar_1052.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1052.jpg inflating: bearsWithoutSplitting/polar/polar_1046.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1046.jpg inflating: bearsWithoutSplitting/polar/polar_1047.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1047.jpg inflating: bearsWithoutSplitting/polar/polar_1053.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1053.jpg inflating: bearsWithoutSplitting/polar/polar_1084.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1084.jpg inflating: bearsWithoutSplitting/polar/polar_1090.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1090.jpg inflating: bearsWithoutSplitting/polar/polar_1245.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1245.jpg inflating: bearsWithoutSplitting/polar/polar_1251.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1251.jpg inflating: bearsWithoutSplitting/polar/polar_1279.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1279.jpg inflating: bearsWithoutSplitting/polar/polar_1286.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1286.jpg inflating: bearsWithoutSplitting/polar/polar_1292.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1292.jpg inflating: bearsWithoutSplitting/polar/polar_1331.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1331.jpg inflating: bearsWithoutSplitting/polar/polar_1325.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1325.jpg inflating: bearsWithoutSplitting/polar/polar_1319.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1319.jpg inflating: bearsWithoutSplitting/polar/polar_1133.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1133.jpg inflating: bearsWithoutSplitting/polar/polar_1127.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1127.jpg inflating: bearsWithoutSplitting/polar/polar_1123.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1123.jpg inflating: bearsWithoutSplitting/polar/polar_1137.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1137.jpg inflating: bearsWithoutSplitting/polar/polar_1321.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1321.jpg inflating: bearsWithoutSplitting/polar/polar_1335.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1335.jpg inflating: bearsWithoutSplitting/polar/polar_1296.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1296.jpg inflating: bearsWithoutSplitting/polar/polar_1282.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1282.jpg inflating: bearsWithoutSplitting/polar/polar_1255.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1255.jpg inflating: bearsWithoutSplitting/polar/polar_1241.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1241.jpg inflating: bearsWithoutSplitting/polar/polar_1269.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1269.jpg inflating: bearsWithoutSplitting/polar/polar_1094.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1094.jpg inflating: bearsWithoutSplitting/polar/polar_1057.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1057.jpg inflating: bearsWithoutSplitting/polar/polar_1043.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1043.jpg inflating: bearsWithoutSplitting/polar/polar_1042.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1042.jpg inflating: bearsWithoutSplitting/polar/polar_1056.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1056.jpg inflating: bearsWithoutSplitting/polar/polar_1081.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1081.jpg inflating: bearsWithoutSplitting/polar/polar_1095.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1095.jpg inflating: bearsWithoutSplitting/polar/polar_1268.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1268.jpg inflating: bearsWithoutSplitting/polar/polar_1240.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1240.jpg inflating: bearsWithoutSplitting/polar/polar_1254.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1254.jpg inflating: bearsWithoutSplitting/polar/polar_1283.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1283.jpg inflating: bearsWithoutSplitting/polar/polar_1297.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1297.jpg inflating: bearsWithoutSplitting/polar/polar_1308.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1308.jpg inflating: bearsWithoutSplitting/polar/polar_1334.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1334.jpg inflating: bearsWithoutSplitting/polar/polar_1320.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1320.jpg inflating: bearsWithoutSplitting/polar/polar_1136.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1136.jpg inflating: bearsWithoutSplitting/polar/polar_1122.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1122.jpg inflating: bearsWithoutSplitting/polar/polar_1134.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1134.jpg inflating: bearsWithoutSplitting/polar/polar_1120.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1120.jpg inflating: bearsWithoutSplitting/polar/polar_1108.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1108.jpg inflating: bearsWithoutSplitting/polar/polar_1336.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1336.jpg inflating: bearsWithoutSplitting/polar/polar_1322.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1322.jpg inflating: bearsWithoutSplitting/polar/polar_1281.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1281.jpg inflating: bearsWithoutSplitting/polar/polar_1295.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1295.jpg inflating: bearsWithoutSplitting/polar/polar_1242.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1242.jpg inflating: bearsWithoutSplitting/polar/polar_1256.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1256.jpg inflating: bearsWithoutSplitting/polar/polar_1083.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1083.jpg inflating: bearsWithoutSplitting/polar/polar_1097.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1097.jpg inflating: bearsWithoutSplitting/polar/polar_1040.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1040.jpg inflating: bearsWithoutSplitting/polar/polar_1054.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1054.jpg inflating: bearsWithoutSplitting/polar/polar_1068.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1068.jpg inflating: bearsWithoutSplitting/polar/polar_1069.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1069.jpg inflating: bearsWithoutSplitting/polar/polar_1055.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1055.jpg inflating: bearsWithoutSplitting/polar/polar_1041.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1041.jpg inflating: bearsWithoutSplitting/polar/polar_1096.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1096.jpg inflating: bearsWithoutSplitting/polar/polar_1257.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1257.jpg inflating: bearsWithoutSplitting/polar/polar_1243.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1243.jpg inflating: bearsWithoutSplitting/polar/polar_1294.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1294.jpg inflating: bearsWithoutSplitting/polar/polar_1280.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1280.jpg inflating: bearsWithoutSplitting/polar/polar_1323.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1323.jpg inflating: bearsWithoutSplitting/polar/polar_1337.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1337.jpg inflating: bearsWithoutSplitting/polar/polar_1109.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1109.jpg inflating: bearsWithoutSplitting/polar/polar_1121.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1121.jpg inflating: bearsWithoutSplitting/polar/polar_1135.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1135.jpg inflating: bearsWithoutSplitting/polar/polar_1191.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1191.jpg inflating: bearsWithoutSplitting/polar/polar_1185.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1185.jpg inflating: bearsWithoutSplitting/polar/polar_1152.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1152.jpg inflating: bearsWithoutSplitting/polar/polar_1146.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1146.jpg inflating: bearsWithoutSplitting/polar/polar_1393.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1393.jpg inflating: bearsWithoutSplitting/polar/polar_1387.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1387.jpg inflating: bearsWithoutSplitting/polar/polar_1378.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1378.jpg inflating: bearsWithoutSplitting/polar/polar_1350.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1350.jpg inflating: bearsWithoutSplitting/polar/polar_1344.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1344.jpg inflating: bearsWithoutSplitting/polar/polar_1218.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1218.jpg inflating: bearsWithoutSplitting/polar/polar_1224.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1224.jpg inflating: bearsWithoutSplitting/polar/polar_1230.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1230.jpg inflating: bearsWithoutSplitting/polar/polar_1026.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1026.jpg inflating: bearsWithoutSplitting/polar/polar_1032.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1032.jpg inflating: bearsWithoutSplitting/polar/polar_1033.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1033.jpg inflating: bearsWithoutSplitting/polar/polar_1027.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1027.jpg inflating: bearsWithoutSplitting/polar/polar_1231.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1231.jpg inflating: bearsWithoutSplitting/polar/polar_1225.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1225.jpg inflating: bearsWithoutSplitting/polar/polar_1219.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1219.jpg inflating: bearsWithoutSplitting/polar/polar_1345.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1345.jpg inflating: bearsWithoutSplitting/polar/polar_1351.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1351.jpg inflating: bearsWithoutSplitting/polar/polar_1379.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1379.jpg inflating: bearsWithoutSplitting/polar/polar_1386.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1386.jpg inflating: bearsWithoutSplitting/polar/polar_1392.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1392.jpg inflating: bearsWithoutSplitting/polar/polar_1147.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1147.jpg inflating: bearsWithoutSplitting/polar/polar_1153.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1153.jpg inflating: bearsWithoutSplitting/polar/polar_1184.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1184.jpg inflating: bearsWithoutSplitting/polar/polar_1190.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1190.jpg inflating: bearsWithoutSplitting/polar/polar_1186.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1186.jpg inflating: bearsWithoutSplitting/polar/polar_1192.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1192.jpg inflating: bearsWithoutSplitting/polar/polar_1347.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1347.png inflating: bearsWithoutSplitting/polar/polar_1179.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1179.jpg inflating: bearsWithoutSplitting/polar/polar_1151.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1151.jpg inflating: bearsWithoutSplitting/polar/polar_1384.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1384.jpg inflating: bearsWithoutSplitting/polar/polar_1390.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1390.jpg inflating: bearsWithoutSplitting/polar/polar_1409.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1409.jpg inflating: bearsWithoutSplitting/polar/polar_1353.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1353.jpg inflating: bearsWithoutSplitting/polar/polar_1233.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1233.jpg inflating: bearsWithoutSplitting/polar/polar_1227.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1227.jpg inflating: bearsWithoutSplitting/polar/polar_1019.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1019.jpg inflating: bearsWithoutSplitting/polar/polar_1031.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1031.jpg inflating: bearsWithoutSplitting/polar/polar_1025.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1025.jpg inflating: bearsWithoutSplitting/polar/polar_1024.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1024.jpg inflating: bearsWithoutSplitting/polar/polar_1030.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1030.jpg inflating: bearsWithoutSplitting/polar/polar_1018.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1018.jpg inflating: bearsWithoutSplitting/polar/polar_1226.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1226.jpg inflating: bearsWithoutSplitting/polar/polar_1232.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1232.jpg inflating: bearsWithoutSplitting/polar/polar_1346.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1346.jpg inflating: bearsWithoutSplitting/polar/polar_1408.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1408.jpg inflating: bearsWithoutSplitting/polar/polar_1391.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1391.jpg inflating: bearsWithoutSplitting/polar/polar_1385.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1385.jpg inflating: bearsWithoutSplitting/polar/polar_1150.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1150.jpg inflating: bearsWithoutSplitting/polar/polar_1144.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1144.jpg inflating: bearsWithoutSplitting/polar/polar_1178.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1178.jpg inflating: bearsWithoutSplitting/polar/polar_1193.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1193.jpg inflating: bearsWithoutSplitting/polar/polar_1187.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1187.jpg inflating: bearsWithoutSplitting/polar/polar_1352.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1352.png inflating: bearsWithoutSplitting/polar/polar_1183.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1183.jpg inflating: bearsWithoutSplitting/polar/polar_1197.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1197.jpg inflating: bearsWithoutSplitting/polar/polar_1140.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1140.jpg inflating: bearsWithoutSplitting/polar/polar_1154.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1154.jpg inflating: bearsWithoutSplitting/polar/polar_1168.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1168.jpg inflating: bearsWithoutSplitting/polar/polar_1381.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1381.jpg inflating: bearsWithoutSplitting/polar/polar_1395.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1395.jpg inflating: bearsWithoutSplitting/polar/polar_1342.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1342.jpg inflating: bearsWithoutSplitting/polar/polar_1356.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1356.jpg inflating: bearsWithoutSplitting/polar/polar_1236.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1236.jpg inflating: bearsWithoutSplitting/polar/polar_1222.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1222.jpg inflating: bearsWithoutSplitting/polar/polar_1034.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1034.jpg inflating: bearsWithoutSplitting/polar/polar_1020.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1020.jpg inflating: bearsWithoutSplitting/polar/polar_1008.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1008.jpg inflating: bearsWithoutSplitting/polar/polar_1009.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1009.jpg inflating: bearsWithoutSplitting/polar/polar_1021.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1021.jpg inflating: bearsWithoutSplitting/polar/polar_1035.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1035.jpg inflating: bearsWithoutSplitting/polar/polar_1223.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1223.jpg inflating: bearsWithoutSplitting/polar/polar_1237.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1237.jpg inflating: bearsWithoutSplitting/polar/polar_1357.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1357.jpg inflating: bearsWithoutSplitting/polar/polar_1343.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1343.jpg inflating: bearsWithoutSplitting/polar/polar_1394.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1394.jpg inflating: bearsWithoutSplitting/polar/polar_1380.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1380.jpg inflating: bearsWithoutSplitting/polar/polar_1169.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1169.jpg inflating: bearsWithoutSplitting/polar/polar_1155.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1155.jpg inflating: bearsWithoutSplitting/polar/polar_1141.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1141.jpg inflating: bearsWithoutSplitting/polar/polar_1196.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1196.jpg inflating: bearsWithoutSplitting/polar/polar_1182.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1182.jpg inflating: bearsWithoutSplitting/polar/polar_1194.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1194.jpg inflating: bearsWithoutSplitting/polar/polar_1180.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1180.jpg inflating: bearsWithoutSplitting/polar/polar_1157.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1157.jpg inflating: bearsWithoutSplitting/polar/polar_1143.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1143.jpg inflating: bearsWithoutSplitting/polar/polar_1396.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1396.jpg inflating: bearsWithoutSplitting/polar/polar_1382.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1382.jpg inflating: bearsWithoutSplitting/polar/polar_1355.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1355.jpg inflating: bearsWithoutSplitting/polar/polar_1341.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1341.jpg inflating: bearsWithoutSplitting/polar/polar_1369.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1369.jpg inflating: bearsWithoutSplitting/polar/polar_1221.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1221.jpg inflating: bearsWithoutSplitting/polar/polar_1235.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1235.jpg inflating: bearsWithoutSplitting/polar/polar_1209.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1209.jpg inflating: bearsWithoutSplitting/polar/polar_1023.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1023.jpg inflating: bearsWithoutSplitting/polar/polar_1037.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1037.jpg inflating: bearsWithoutSplitting/polar/polar_1036.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1036.jpg inflating: bearsWithoutSplitting/polar/polar_1022.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1022.jpg inflating: bearsWithoutSplitting/polar/polar_1208.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1208.jpg inflating: bearsWithoutSplitting/polar/polar_1234.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1234.jpg inflating: bearsWithoutSplitting/polar/polar_1220.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1220.jpg inflating: bearsWithoutSplitting/polar/polar_1368.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1368.jpg inflating: bearsWithoutSplitting/polar/polar_1340.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1340.jpg inflating: bearsWithoutSplitting/polar/polar_1383.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1383.jpg inflating: bearsWithoutSplitting/polar/polar_1397.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1397.jpg inflating: bearsWithoutSplitting/polar/polar_1142.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1142.jpg inflating: bearsWithoutSplitting/polar/polar_1156.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1156.jpg inflating: bearsWithoutSplitting/polar/polar_1181.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1181.jpg inflating: bearsWithoutSplitting/polar/polar_1354.png inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1354.png inflating: bearsWithoutSplitting/polar/polar_1195.jpg inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1195.jpg inflating: bearsWithoutSplitting/panda/panda_1167.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1167.jpg inflating: bearsWithoutSplitting/panda/panda_1173.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1173.jpg inflating: bearsWithoutSplitting/panda/panda_1198.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1198.jpg inflating: bearsWithoutSplitting/panda/panda_1359.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1359.jpg inflating: bearsWithoutSplitting/panda/panda_1365.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1365.jpg inflating: bearsWithoutSplitting/panda/panda_1371.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1371.jpg inflating: bearsWithoutSplitting/panda/panda_1239.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1239.jpg inflating: bearsWithoutSplitting/panda/panda_1211.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1211.jpg inflating: bearsWithoutSplitting/panda/panda_1205.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1205.jpg inflating: bearsWithoutSplitting/panda/panda_1013.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1013.jpg inflating: bearsWithoutSplitting/panda/panda_1007.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1007.jpg inflating: bearsWithoutSplitting/panda/panda_1006.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1006.jpg inflating: bearsWithoutSplitting/panda/panda_1012.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1012.jpg inflating: bearsWithoutSplitting/panda/panda_1204.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1204.jpg inflating: bearsWithoutSplitting/panda/panda_1210.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1210.jpg inflating: bearsWithoutSplitting/panda/panda_1238.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1238.jpg inflating: bearsWithoutSplitting/panda/panda_1370.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1370.jpg inflating: bearsWithoutSplitting/panda/panda_1402.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1402.jpg inflating: bearsWithoutSplitting/panda/panda_1364.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1364.jpg inflating: bearsWithoutSplitting/panda/panda_1358.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1358.jpg inflating: bearsWithoutSplitting/panda/panda_1199.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1199.jpg inflating: bearsWithoutSplitting/panda/panda_1172.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1172.jpg inflating: bearsWithoutSplitting/panda/panda_1166.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1166.jpg inflating: bearsWithoutSplitting/panda/panda_1158.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1158.jpg inflating: bearsWithoutSplitting/panda/panda_1170.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1170.jpg inflating: bearsWithoutSplitting/panda/panda_1164.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1164.jpg inflating: bearsWithoutSplitting/panda/panda_1372.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1372.jpg inflating: bearsWithoutSplitting/panda/panda_1366.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1366.jpg inflating: bearsWithoutSplitting/panda/panda_1400.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1400.jpg inflating: bearsWithoutSplitting/panda/panda_1399.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1399.jpg inflating: bearsWithoutSplitting/panda/panda_1206.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1206.jpg inflating: bearsWithoutSplitting/panda/panda_1212.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1212.jpg inflating: bearsWithoutSplitting/panda/panda_1038.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1038.jpg inflating: bearsWithoutSplitting/panda/panda_1004.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1004.jpg inflating: bearsWithoutSplitting/panda/panda_1010.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1010.jpg inflating: bearsWithoutSplitting/panda/panda_1011.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1011.jpg inflating: bearsWithoutSplitting/panda/panda_1005.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1005.jpg inflating: bearsWithoutSplitting/panda/panda_1039.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1039.jpg inflating: bearsWithoutSplitting/panda/panda_1213.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1213.jpg inflating: bearsWithoutSplitting/panda/panda_1207.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1207.jpg inflating: bearsWithoutSplitting/panda/panda_1398.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1398.jpg inflating: bearsWithoutSplitting/panda/panda_1367.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1367.jpg inflating: bearsWithoutSplitting/panda/panda_1401.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1401.jpg inflating: bearsWithoutSplitting/panda/panda_1373.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1373.jpg inflating: bearsWithoutSplitting/panda/panda_1165.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1165.jpg inflating: bearsWithoutSplitting/panda/panda_1171.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1171.jpg inflating: bearsWithoutSplitting/panda/panda_1159.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1159.jpg inflating: bearsWithoutSplitting/panda/panda_1175.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1175.jpg inflating: bearsWithoutSplitting/panda/panda_1161.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1161.jpg inflating: bearsWithoutSplitting/panda/panda_1149.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1149.jpg inflating: bearsWithoutSplitting/panda/panda_1377.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1377.jpg inflating: bearsWithoutSplitting/panda/panda_1363.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1363.jpg inflating: bearsWithoutSplitting/panda/panda_1388.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1388.jpg inflating: bearsWithoutSplitting/panda/panda_1203.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1203.jpg inflating: bearsWithoutSplitting/panda/panda_1217.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1217.jpg inflating: bearsWithoutSplitting/panda/panda_1001.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1001.jpg inflating: bearsWithoutSplitting/panda/panda_1015.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1015.jpg inflating: bearsWithoutSplitting/panda/panda_1029.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1029.jpg inflating: bearsWithoutSplitting/panda/panda_1028.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1028.jpg inflating: bearsWithoutSplitting/panda/panda_1014.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1014.jpg inflating: bearsWithoutSplitting/panda/panda_1000.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1000.jpg inflating: bearsWithoutSplitting/panda/panda_1216.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1216.jpg inflating: bearsWithoutSplitting/panda/panda_1202.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1202.jpg inflating: bearsWithoutSplitting/panda/panda_1389.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1389.jpg inflating: bearsWithoutSplitting/panda/panda_1362.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1362.jpg inflating: bearsWithoutSplitting/panda/panda_1376.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1376.jpg inflating: bearsWithoutSplitting/panda/panda_1148.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1148.jpg inflating: bearsWithoutSplitting/panda/panda_1160.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1160.jpg inflating: bearsWithoutSplitting/panda/panda_1174.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1174.jpg inflating: bearsWithoutSplitting/panda/panda_1162.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1162.jpg inflating: bearsWithoutSplitting/panda/panda_1176.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1176.jpg inflating: bearsWithoutSplitting/panda/panda_1189.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1189.jpg inflating: bearsWithoutSplitting/panda/panda_1360.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1360.jpg inflating: bearsWithoutSplitting/panda/panda_1374.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1374.jpg inflating: bearsWithoutSplitting/panda/panda_1348.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1348.jpg inflating: bearsWithoutSplitting/panda/panda_1214.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1214.jpg inflating: bearsWithoutSplitting/panda/panda_1200.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1200.jpg inflating: bearsWithoutSplitting/panda/panda_1228.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1228.jpg inflating: bearsWithoutSplitting/panda/panda_1016.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1016.jpg inflating: bearsWithoutSplitting/panda/panda_1002.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1002.jpg inflating: bearsWithoutSplitting/panda/panda_1003.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1003.jpg inflating: bearsWithoutSplitting/panda/panda_1017.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1017.jpg inflating: bearsWithoutSplitting/panda/panda_1229.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1229.jpg inflating: bearsWithoutSplitting/panda/panda_1201.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1201.jpg inflating: bearsWithoutSplitting/panda/panda_1215.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1215.jpg inflating: bearsWithoutSplitting/panda/panda_1349.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1349.jpg inflating: bearsWithoutSplitting/panda/panda_1375.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1375.jpg inflating: bearsWithoutSplitting/panda/panda_1361.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1361.jpg inflating: bearsWithoutSplitting/panda/panda_1188.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1188.jpg inflating: bearsWithoutSplitting/panda/panda_1177.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1177.jpg inflating: bearsWithoutSplitting/panda/panda_1163.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1163.jpg inflating: bearsWithoutSplitting/panda/panda_1138.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1138.jpg inflating: bearsWithoutSplitting/panda/panda_1104.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1104.jpg inflating: bearsWithoutSplitting/panda/panda_1110.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1110.jpg inflating: bearsWithoutSplitting/panda/panda_1306.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1306.jpg inflating: bearsWithoutSplitting/panda/panda_1312.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1312.jpg inflating: bearsWithoutSplitting/panda/panda_1272.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1272.jpg inflating: bearsWithoutSplitting/panda/panda_1266.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1266.jpg inflating: bearsWithoutSplitting/panda/panda_1299.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1299.jpg inflating: bearsWithoutSplitting/panda/panda_1058.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1058.jpg inflating: bearsWithoutSplitting/panda/panda_1070.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1070.jpg inflating: bearsWithoutSplitting/panda/panda_1064.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1064.jpg inflating: bearsWithoutSplitting/panda/panda_1065.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1065.jpg inflating: bearsWithoutSplitting/panda/panda_1071.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1071.jpg inflating: bearsWithoutSplitting/panda/panda_1059.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1059.jpg inflating: bearsWithoutSplitting/panda/panda_1298.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1298.jpg inflating: bearsWithoutSplitting/panda/panda_1267.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1267.jpg inflating: bearsWithoutSplitting/panda/panda_1273.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1273.jpg inflating: bearsWithoutSplitting/panda/panda_1313.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1313.jpg inflating: bearsWithoutSplitting/panda/panda_1307.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1307.jpg inflating: bearsWithoutSplitting/panda/panda_1111.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1111.jpg inflating: bearsWithoutSplitting/panda/panda_1105.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1105.jpg inflating: bearsWithoutSplitting/panda/panda_1139.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1139.jpg inflating: bearsWithoutSplitting/panda/panda_1113.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1113.jpg inflating: bearsWithoutSplitting/panda/panda_1107.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1107.jpg inflating: bearsWithoutSplitting/panda/panda_1339.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1339.jpg inflating: bearsWithoutSplitting/panda/panda_1311.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1311.jpg inflating: bearsWithoutSplitting/panda/panda_1305.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1305.jpg inflating: bearsWithoutSplitting/panda/panda_1259.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1259.jpg inflating: bearsWithoutSplitting/panda/panda_1265.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1265.jpg inflating: bearsWithoutSplitting/panda/panda_1271.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1271.jpg inflating: bearsWithoutSplitting/panda/panda_1067.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1067.jpg inflating: bearsWithoutSplitting/panda/panda_1073.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1073.jpg inflating: bearsWithoutSplitting/panda/panda_1098.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1098.jpg inflating: bearsWithoutSplitting/panda/panda_1099.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1099.jpg inflating: bearsWithoutSplitting/panda/panda_1072.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1072.jpg inflating: bearsWithoutSplitting/panda/panda_1066.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1066.jpg inflating: bearsWithoutSplitting/panda/panda_1270.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1270.jpg inflating: bearsWithoutSplitting/panda/panda_1264.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1264.jpg inflating: bearsWithoutSplitting/panda/panda_1258.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1258.jpg inflating: bearsWithoutSplitting/panda/panda_1304.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1304.jpg inflating: bearsWithoutSplitting/panda/panda_1310.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1310.jpg inflating: bearsWithoutSplitting/panda/panda_1338.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1338.jpg inflating: bearsWithoutSplitting/panda/panda_1106.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1106.jpg inflating: bearsWithoutSplitting/panda/panda_1112.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1112.jpg inflating: bearsWithoutSplitting/panda/panda_1116.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1116.jpg inflating: bearsWithoutSplitting/panda/panda_1102.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1102.jpg inflating: bearsWithoutSplitting/panda/panda_1314.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1314.jpg inflating: bearsWithoutSplitting/panda/panda_1300.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1300.jpg inflating: bearsWithoutSplitting/panda/panda_1328.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1328.jpg inflating: bearsWithoutSplitting/panda/panda_1260.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1260.jpg inflating: bearsWithoutSplitting/panda/panda_1274.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1274.jpg inflating: bearsWithoutSplitting/panda/panda_1248.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1248.jpg inflating: bearsWithoutSplitting/panda/panda_1062.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1062.jpg inflating: bearsWithoutSplitting/panda/panda_1076.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1076.jpg inflating: bearsWithoutSplitting/panda/panda_1089.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1089.jpg inflating: bearsWithoutSplitting/panda/panda_1088.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1088.jpg inflating: bearsWithoutSplitting/panda/panda_1077.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1077.jpg inflating: bearsWithoutSplitting/panda/panda_1063.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1063.jpg inflating: bearsWithoutSplitting/panda/panda_1249.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1249.jpg inflating: bearsWithoutSplitting/panda/panda_1275.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1275.jpg inflating: bearsWithoutSplitting/panda/panda_1261.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1261.jpg inflating: bearsWithoutSplitting/panda/panda_1329.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1329.jpg inflating: bearsWithoutSplitting/panda/panda_1301.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1301.jpg inflating: bearsWithoutSplitting/panda/panda_1315.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1315.png inflating: bearsWithoutSplitting/panda/panda_1103.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1103.jpg inflating: bearsWithoutSplitting/panda/panda_1117.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1117.jpg inflating: bearsWithoutSplitting/panda/panda_1101.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1101.jpg inflating: bearsWithoutSplitting/panda/panda_1115.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1115.jpg inflating: bearsWithoutSplitting/panda/panda_1129.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1129.jpg inflating: bearsWithoutSplitting/panda/panda_1303.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1303.jpg inflating: bearsWithoutSplitting/panda/panda_1317.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1317.jpg inflating: bearsWithoutSplitting/panda/panda_1277.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1277.jpg inflating: bearsWithoutSplitting/panda/panda_1263.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1263.jpg inflating: bearsWithoutSplitting/panda/panda_1288.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1288.jpg inflating: bearsWithoutSplitting/panda/panda_1075.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1075.jpg inflating: bearsWithoutSplitting/panda/panda_1061.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1061.jpg inflating: bearsWithoutSplitting/panda/panda_1049.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1049.jpg inflating: bearsWithoutSplitting/panda/panda_1048.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1048.jpg inflating: bearsWithoutSplitting/panda/panda_1060.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1060.jpg inflating: bearsWithoutSplitting/panda/panda_1074.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1074.jpg inflating: bearsWithoutSplitting/panda/panda_1289.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1289.jpg inflating: bearsWithoutSplitting/panda/panda_1262.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1262.jpg inflating: bearsWithoutSplitting/panda/panda_1276.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1276.jpg inflating: bearsWithoutSplitting/panda/panda_1316.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1316.jpg inflating: bearsWithoutSplitting/panda/panda_1302.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1302.jpg inflating: bearsWithoutSplitting/panda/panda_1128.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1128.jpg inflating: bearsWithoutSplitting/panda/panda_1114.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1114.jpg inflating: bearsWithoutSplitting/panda/panda_1100.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1100.jpg inflating: bearsWithoutSplitting/panda/panda_1119.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1119.jpg inflating: bearsWithoutSplitting/panda/panda_1125.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1125.jpg inflating: bearsWithoutSplitting/panda/panda_1131.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1131.jpg inflating: bearsWithoutSplitting/panda/panda_1327.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1327.jpg inflating: bearsWithoutSplitting/panda/panda_1333.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1333.jpg inflating: bearsWithoutSplitting/panda/panda_1253.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1253.jpg inflating: bearsWithoutSplitting/panda/panda_1247.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1247.jpg inflating: bearsWithoutSplitting/panda/panda_1290.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1290.jpg inflating: bearsWithoutSplitting/panda/panda_1284.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1284.jpg inflating: bearsWithoutSplitting/panda/panda_1079.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1079.jpg inflating: bearsWithoutSplitting/panda/panda_1051.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1051.jpg inflating: bearsWithoutSplitting/panda/panda_1045.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1045.jpg inflating: bearsWithoutSplitting/panda/panda_1092.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1092.jpg inflating: bearsWithoutSplitting/panda/panda_1086.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1086.jpg inflating: bearsWithoutSplitting/panda/panda_1087.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1087.jpg inflating: bearsWithoutSplitting/panda/panda_1093.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1093.jpg inflating: bearsWithoutSplitting/panda/panda_1044.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1044.jpg inflating: bearsWithoutSplitting/panda/panda_1050.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1050.jpg inflating: bearsWithoutSplitting/panda/panda_1078.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1078.jpg inflating: bearsWithoutSplitting/panda/panda_1285.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1285.jpg inflating: bearsWithoutSplitting/panda/panda_1291.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1291.jpg inflating: bearsWithoutSplitting/panda/panda_1246.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1246.jpg inflating: bearsWithoutSplitting/panda/panda_1252.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1252.jpg inflating: bearsWithoutSplitting/panda/panda_1332.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1332.jpg inflating: bearsWithoutSplitting/panda/panda_1326.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1326.jpg inflating: bearsWithoutSplitting/panda/panda_1130.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1130.jpg inflating: bearsWithoutSplitting/panda/panda_1124.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1124.jpg inflating: bearsWithoutSplitting/panda/panda_1118.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1118.jpg inflating: bearsWithoutSplitting/panda/panda_1132.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1132.jpg inflating: bearsWithoutSplitting/panda/panda_1126.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1126.jpg inflating: bearsWithoutSplitting/panda/panda_1318.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1318.jpg inflating: bearsWithoutSplitting/panda/panda_1330.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1330.jpg inflating: bearsWithoutSplitting/panda/panda_1324.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1324.jpg inflating: bearsWithoutSplitting/panda/panda_1278.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1278.jpg inflating: bearsWithoutSplitting/panda/panda_1244.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1244.jpg inflating: bearsWithoutSplitting/panda/panda_1250.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1250.jpg inflating: bearsWithoutSplitting/panda/panda_1287.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1287.jpg inflating: bearsWithoutSplitting/panda/panda_1293.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1293.jpg inflating: bearsWithoutSplitting/panda/panda_1046.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1046.jpg inflating: bearsWithoutSplitting/panda/panda_1052.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1052.jpg inflating: bearsWithoutSplitting/panda/panda_1085.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1085.jpg inflating: bearsWithoutSplitting/panda/panda_1091.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1091.jpg inflating: bearsWithoutSplitting/panda/panda_1090.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1090.jpg inflating: bearsWithoutSplitting/panda/panda_1084.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1084.jpg inflating: bearsWithoutSplitting/panda/panda_1053.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1053.jpg inflating: bearsWithoutSplitting/panda/panda_1047.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1047.jpg inflating: bearsWithoutSplitting/panda/panda_1292.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1292.jpg inflating: bearsWithoutSplitting/panda/panda_1286.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1286.jpg inflating: bearsWithoutSplitting/panda/panda_1251.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1251.jpg inflating: bearsWithoutSplitting/panda/panda_1245.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1245.jpg inflating: bearsWithoutSplitting/panda/panda_1279.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1279.jpg inflating: bearsWithoutSplitting/panda/panda_1325.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1325.jpg inflating: bearsWithoutSplitting/panda/panda_1331.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1331.jpg inflating: bearsWithoutSplitting/panda/panda_1319.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1319.jpg inflating: bearsWithoutSplitting/panda/panda_1127.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1127.jpg inflating: bearsWithoutSplitting/panda/panda_1133.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1133.jpg inflating: bearsWithoutSplitting/panda/panda_1137.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1137.jpg inflating: bearsWithoutSplitting/panda/panda_1123.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1123.jpg inflating: bearsWithoutSplitting/panda/panda_1321.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1321.png inflating: bearsWithoutSplitting/panda/panda_1335.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1335.png inflating: bearsWithoutSplitting/panda/panda_1309.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1309.jpg inflating: bearsWithoutSplitting/panda/panda_1255.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1255.jpg inflating: bearsWithoutSplitting/panda/panda_1282.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1282.jpg inflating: bearsWithoutSplitting/panda/panda_1296.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1296.jpg inflating: bearsWithoutSplitting/panda/panda_1043.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1043.jpg inflating: bearsWithoutSplitting/panda/panda_1057.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1057.jpg inflating: bearsWithoutSplitting/panda/panda_1080.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1080.jpg inflating: bearsWithoutSplitting/panda/panda_1094.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1094.jpg inflating: bearsWithoutSplitting/panda/panda_1269.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1269.png inflating: bearsWithoutSplitting/panda/panda_1095.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1095.jpg inflating: bearsWithoutSplitting/panda/panda_1081.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1081.jpg inflating: bearsWithoutSplitting/panda/panda_1056.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1056.jpg inflating: bearsWithoutSplitting/panda/panda_1042.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1042.jpg inflating: bearsWithoutSplitting/panda/panda_1297.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1297.jpg inflating: bearsWithoutSplitting/panda/panda_1283.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1283.jpg inflating: bearsWithoutSplitting/panda/panda_1268.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1268.jpg inflating: bearsWithoutSplitting/panda/panda_1254.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1254.jpg inflating: bearsWithoutSplitting/panda/panda_1240.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1240.jpg inflating: bearsWithoutSplitting/panda/panda_1308.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1308.jpg inflating: bearsWithoutSplitting/panda/panda_1320.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1320.jpg inflating: bearsWithoutSplitting/panda/panda_1334.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1334.jpg inflating: bearsWithoutSplitting/panda/panda_1122.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1122.jpg inflating: bearsWithoutSplitting/panda/panda_1136.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1136.jpg inflating: bearsWithoutSplitting/panda/panda_1120.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1120.jpg inflating: bearsWithoutSplitting/panda/panda_1134.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1134.jpg inflating: bearsWithoutSplitting/panda/panda_1108.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1108.jpg inflating: bearsWithoutSplitting/panda/panda_1322.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1322.jpg inflating: bearsWithoutSplitting/panda/panda_1336.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1336.jpg inflating: bearsWithoutSplitting/panda/panda_1256.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1256.jpg inflating: bearsWithoutSplitting/panda/panda_1242.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1242.jpg inflating: bearsWithoutSplitting/panda/panda_1295.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1295.jpg inflating: bearsWithoutSplitting/panda/panda_1281.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1281.jpg inflating: bearsWithoutSplitting/panda/panda_1054.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1054.jpg inflating: bearsWithoutSplitting/panda/panda_1040.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1040.jpg inflating: bearsWithoutSplitting/panda/panda_1068.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1068.jpg inflating: bearsWithoutSplitting/panda/panda_1097.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1097.jpg inflating: bearsWithoutSplitting/panda/panda_1083.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1083.jpg inflating: bearsWithoutSplitting/panda/panda_1082.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1082.jpg inflating: bearsWithoutSplitting/panda/panda_1096.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1096.jpg inflating: bearsWithoutSplitting/panda/panda_1069.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1069.jpg inflating: bearsWithoutSplitting/panda/panda_1041.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1041.jpg inflating: bearsWithoutSplitting/panda/panda_1055.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1055.jpg inflating: bearsWithoutSplitting/panda/panda_1280.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1280.jpg inflating: bearsWithoutSplitting/panda/panda_1294.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1294.jpg inflating: bearsWithoutSplitting/panda/panda_1243.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1243.jpg inflating: bearsWithoutSplitting/panda/panda_1257.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1257.jpg inflating: bearsWithoutSplitting/panda/panda_1337.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1337.jpg inflating: bearsWithoutSplitting/panda/panda_1323.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1323.jpg inflating: bearsWithoutSplitting/panda/panda_1109.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1109.jpg inflating: bearsWithoutSplitting/panda/panda_1135.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1135.jpg inflating: bearsWithoutSplitting/panda/panda_1121.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1121.jpg inflating: bearsWithoutSplitting/panda/panda_1146.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1146.jpg inflating: bearsWithoutSplitting/panda/panda_1152.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1152.jpg inflating: bearsWithoutSplitting/panda/panda_1185.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1185.jpg inflating: bearsWithoutSplitting/panda/panda_1191.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1191.jpg inflating: bearsWithoutSplitting/panda/panda_1378.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1378.jpg inflating: bearsWithoutSplitting/panda/panda_1344.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1344.jpg inflating: bearsWithoutSplitting/panda/panda_1350.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1350.jpg inflating: bearsWithoutSplitting/panda/panda_1387.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1387.jpg inflating: bearsWithoutSplitting/panda/panda_1393.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1393.jpg inflating: bearsWithoutSplitting/panda/panda_1218.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1218.jpg inflating: bearsWithoutSplitting/panda/panda_1230.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1230.jpg inflating: bearsWithoutSplitting/panda/panda_1224.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1224.jpg inflating: bearsWithoutSplitting/panda/panda_1032.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1032.jpg inflating: bearsWithoutSplitting/panda/panda_1026.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1026.jpg inflating: bearsWithoutSplitting/panda/panda_1027.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1027.jpg inflating: bearsWithoutSplitting/panda/panda_1033.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1033.jpg inflating: bearsWithoutSplitting/panda/panda_1225.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1225.jpg inflating: bearsWithoutSplitting/panda/panda_1231.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1231.jpg inflating: bearsWithoutSplitting/panda/panda_1219.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1219.jpg inflating: bearsWithoutSplitting/panda/panda_1392.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1392.jpg inflating: bearsWithoutSplitting/panda/panda_1386.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1386.jpg inflating: bearsWithoutSplitting/panda/panda_1351.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1351.jpg inflating: bearsWithoutSplitting/panda/panda_1345.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1345.jpg inflating: bearsWithoutSplitting/panda/panda_1379.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1379.jpg inflating: bearsWithoutSplitting/panda/panda_1190.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1190.jpg inflating: bearsWithoutSplitting/panda/panda_1184.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1184.jpg inflating: bearsWithoutSplitting/panda/panda_1153.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1153.jpg inflating: bearsWithoutSplitting/panda/panda_1147.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1147.jpg inflating: bearsWithoutSplitting/panda/panda_1151.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1151.jpg inflating: bearsWithoutSplitting/panda/panda_1145.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1145.jpg inflating: bearsWithoutSplitting/panda/panda_1390.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1390.png inflating: bearsWithoutSplitting/panda/panda_1192.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1192.jpg inflating: bearsWithoutSplitting/panda/panda_1347.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1347.png inflating: bearsWithoutSplitting/panda/panda_1186.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1186.jpg inflating: bearsWithoutSplitting/panda/panda_1353.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1353.jpg inflating: bearsWithoutSplitting/panda/panda_1179.png inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1179.png inflating: bearsWithoutSplitting/panda/panda_1384.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1384.jpg inflating: bearsWithoutSplitting/panda/panda_1227.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1227.jpg inflating: bearsWithoutSplitting/panda/panda_1233.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1233.jpg inflating: bearsWithoutSplitting/panda/panda_1019.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1019.jpg inflating: bearsWithoutSplitting/panda/panda_1025.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1025.jpg inflating: bearsWithoutSplitting/panda/panda_1031.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1031.jpg inflating: bearsWithoutSplitting/panda/panda_1030.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1030.jpg inflating: bearsWithoutSplitting/panda/panda_1024.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1024.jpg inflating: bearsWithoutSplitting/panda/panda_1018.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1018.jpg inflating: bearsWithoutSplitting/panda/panda_1232.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1232.jpg inflating: bearsWithoutSplitting/panda/panda_1226.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1226.jpg inflating: bearsWithoutSplitting/panda/panda_1385.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1385.jpg inflating: bearsWithoutSplitting/panda/panda_1391.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1391.jpg inflating: bearsWithoutSplitting/panda/panda_1346.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1346.jpg inflating: bearsWithoutSplitting/panda/panda_1352.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1352.jpg inflating: bearsWithoutSplitting/panda/panda_1187.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1187.jpg inflating: bearsWithoutSplitting/panda/panda_1193.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1193.jpg inflating: bearsWithoutSplitting/panda/panda_1144.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1144.jpg inflating: bearsWithoutSplitting/panda/panda_1150.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1150.jpg inflating: bearsWithoutSplitting/panda/panda_1178.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1178.jpg inflating: bearsWithoutSplitting/panda/panda_1154.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1154.jpg inflating: bearsWithoutSplitting/panda/panda_1140.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1140.jpg inflating: bearsWithoutSplitting/panda/panda_1168.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1168.jpg inflating: bearsWithoutSplitting/panda/panda_1197.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1197.jpg inflating: bearsWithoutSplitting/panda/panda_1183.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1183.jpg inflating: bearsWithoutSplitting/panda/panda_1356.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1356.jpg inflating: bearsWithoutSplitting/panda/panda_1342.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1342.jpg inflating: bearsWithoutSplitting/panda/panda_1395.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1395.jpg inflating: bearsWithoutSplitting/panda/panda_1381.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1381.jpg inflating: bearsWithoutSplitting/panda/panda_1222.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1222.jpg inflating: bearsWithoutSplitting/panda/panda_1236.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1236.jpg inflating: bearsWithoutSplitting/panda/panda_1020.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1020.jpg inflating: bearsWithoutSplitting/panda/panda_1034.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1034.jpg inflating: bearsWithoutSplitting/panda/panda_1008.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1008.jpg inflating: bearsWithoutSplitting/panda/panda_1009.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1009.jpg inflating: bearsWithoutSplitting/panda/panda_1035.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1035.jpg inflating: bearsWithoutSplitting/panda/panda_1021.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1021.jpg inflating: bearsWithoutSplitting/panda/panda_1237.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1237.jpg inflating: bearsWithoutSplitting/panda/panda_1223.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1223.jpg inflating: bearsWithoutSplitting/panda/panda_1380.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1380.jpg inflating: bearsWithoutSplitting/panda/panda_1394.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1394.jpg inflating: bearsWithoutSplitting/panda/panda_1343.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1343.jpg inflating: bearsWithoutSplitting/panda/panda_1357.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1357.jpg inflating: bearsWithoutSplitting/panda/panda_1182.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1182.jpg inflating: bearsWithoutSplitting/panda/panda_1196.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1196.jpg inflating: bearsWithoutSplitting/panda/panda_1169.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1169.jpg inflating: bearsWithoutSplitting/panda/panda_1141.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1141.jpg inflating: bearsWithoutSplitting/panda/panda_1155.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1155.jpg inflating: bearsWithoutSplitting/panda/panda_1143.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1143.jpg inflating: bearsWithoutSplitting/panda/panda_1157.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1157.jpg inflating: bearsWithoutSplitting/panda/panda_1180.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1180.jpg inflating: bearsWithoutSplitting/panda/panda_1194.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1194.jpg inflating: bearsWithoutSplitting/panda/panda_1341.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1341.jpg inflating: bearsWithoutSplitting/panda/panda_1355.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1355.jpg inflating: bearsWithoutSplitting/panda/panda_1369.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1369.jpg inflating: bearsWithoutSplitting/panda/panda_1382.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1382.jpg inflating: bearsWithoutSplitting/panda/panda_1396.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1396.jpg inflating: bearsWithoutSplitting/panda/panda_1235.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1235.jpg inflating: bearsWithoutSplitting/panda/panda_1221.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1221.jpg inflating: bearsWithoutSplitting/panda/panda_1209.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1209.jpg inflating: bearsWithoutSplitting/panda/panda_1037.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1037.jpg inflating: bearsWithoutSplitting/panda/panda_1023.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1023.jpg inflating: bearsWithoutSplitting/panda/panda_1022.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1022.jpg inflating: bearsWithoutSplitting/panda/panda_1036.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1036.jpg inflating: bearsWithoutSplitting/panda/panda_1208.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1208.jpg inflating: bearsWithoutSplitting/panda/panda_1220.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1220.jpg inflating: bearsWithoutSplitting/panda/panda_1234.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1234.jpg inflating: bearsWithoutSplitting/panda/panda_1397.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1397.jpg inflating: bearsWithoutSplitting/panda/panda_1383.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1383.jpg inflating: bearsWithoutSplitting/panda/panda_1368.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1368.jpg inflating: bearsWithoutSplitting/panda/panda_1354.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1354.jpg inflating: bearsWithoutSplitting/panda/panda_1340.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1340.jpg inflating: bearsWithoutSplitting/panda/panda_1195.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1195.jpg inflating: bearsWithoutSplitting/panda/panda_1181.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1181.jpg inflating: bearsWithoutSplitting/panda/panda_1156.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1156.jpg inflating: bearsWithoutSplitting/panda/panda_1142.jpg inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1142.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1126.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1126.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1132.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1132.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1318.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1318.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1324.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1324.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1330.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1330.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1278.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1278.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1250.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1250.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1244.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1244.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1293.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1293.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1287.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1287.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1052.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1052.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1046.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1046.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1091.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1091.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1085.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1085.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1084.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1084.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1090.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1090.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1047.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1047.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1053.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1053.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1286.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1286.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1292.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1292.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1245.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1245.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1251.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1251.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1279.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1279.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1331.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1331.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1325.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1325.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1319.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1319.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1133.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1133.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1127.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1127.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1119.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1119.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1131.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1131.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1125.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1125.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1333.png inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1333.png inflating: bearsWithoutSplitting/grizzly/grizzly_1247.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1247.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1253.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1253.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1284.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1284.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1290.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1290.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1079.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1079.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1045.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1045.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1051.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1051.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1086.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1086.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1092.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1092.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1093.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1093.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1087.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1087.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1050.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1050.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1044.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1044.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1078.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1078.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1291.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1291.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1285.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1285.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1252.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1252.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1246.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1246.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1326.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1326.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1332.png inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1332.png inflating: bearsWithoutSplitting/grizzly/grizzly_1124.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1124.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1130.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1130.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1118.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1118.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1134.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1134.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1120.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1120.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1108.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1108.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1336.png inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1336.png inflating: bearsWithoutSplitting/grizzly/grizzly_1322.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1322.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1242.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1242.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1256.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1256.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1281.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1281.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1295.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1295.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1040.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1040.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1054.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1054.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1068.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1068.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1083.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1083.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1097.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1097.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1096.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1096.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1082.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1082.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1069.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1069.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1055.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1055.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1041.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1041.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1294.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1294.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1280.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1280.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1257.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1257.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1243.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1243.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1323.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1323.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1337.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1337.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1109.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1109.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1121.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1121.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1135.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1135.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1123.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1123.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1137.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1137.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1321.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1321.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1335.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1335.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1309.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1309.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1255.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1255.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1241.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1241.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1269.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1269.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1296.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1296.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1282.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1282.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1057.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1057.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1043.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1043.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1094.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1094.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1080.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1080.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1081.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1081.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1095.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1095.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1042.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1042.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1056.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1056.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1283.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1283.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1297.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1297.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1268.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1268.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1240.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1240.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1254.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1254.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1308.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1308.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1334.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1334.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1320.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1320.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1136.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1136.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1122.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1122.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1179.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1179.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1145.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1145.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1151.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1151.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1186.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1186.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1192.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1192.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1347.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1347.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1353.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1353.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1384.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1384.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1390.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1390.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1227.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1227.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1019.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1019.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1031.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1031.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1025.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1025.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1024.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1024.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1030.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1030.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1018.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1018.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1226.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1226.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1232.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1232.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1391.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1391.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1385.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1385.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1352.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1352.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1346.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1346.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1187.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1187.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1150.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1150.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1144.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1144.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1178.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1178.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1152.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1152.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1146.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1146.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1191.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1191.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1185.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1185.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1378.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1378.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1350.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1350.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1344.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1344.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1393.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1393.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1387.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1387.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1218.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1218.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1224.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1224.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1230.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1230.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1026.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1026.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1032.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1032.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1033.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1033.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1027.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1027.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1231.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1231.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1225.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1225.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1219.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1219.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1386.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1386.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1392.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1392.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1351.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1351.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1379.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1379.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1184.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1184.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1190.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1190.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1147.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1147.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1153.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1153.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1157.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1157.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1143.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1143.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1194.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1194.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1341.png inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1341.png inflating: bearsWithoutSplitting/grizzly/grizzly_1180.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1180.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1355.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1355.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1369.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1369.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1396.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1396.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1382.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1382.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1221.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1221.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1235.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1235.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1209.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1209.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1023.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1023.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1037.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1037.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1036.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1036.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1022.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1022.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1208.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1208.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1234.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1234.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1220.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1220.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1383.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1383.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1397.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1397.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1368.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1368.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1354.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1354.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1340.png inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1340.png inflating: bearsWithoutSplitting/grizzly/grizzly_1195.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1195.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1142.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1142.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1156.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1156.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1140.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1140.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1154.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1154.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1168.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1168.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1183.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1183.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1197.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1197.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1342.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1342.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1356.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1356.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1381.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1381.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1395.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1395.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1236.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1236.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1222.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1222.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1034.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1034.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1020.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1020.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1008.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1008.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1009.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1009.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1021.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1021.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1035.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1035.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1223.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1223.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1237.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1237.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1394.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1394.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1380.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1380.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1357.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1357.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1343.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1343.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1196.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1196.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1182.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1182.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1169.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1169.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1155.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1155.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1141.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1141.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1158.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1158.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1164.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1164.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1170.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1170.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1366.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1366.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1372.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1372.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1212.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1212.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1206.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1206.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1038.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1038.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1010.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1010.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1004.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1004.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1005.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1005.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1011.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1011.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1039.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1039.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1207.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1207.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1213.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1213.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1373.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1373.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1367.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1367.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1171.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1171.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1165.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1165.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1159.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1159.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1173.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1173.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1167.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1167.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1198.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1198.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1359.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1359.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1371.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1371.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1239.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1239.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1205.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1205.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1211.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1211.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1007.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1007.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1013.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1013.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1012.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1012.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1006.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1006.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1210.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1210.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1204.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1204.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1238.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1238.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1364.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1364.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1370.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1370.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1358.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1358.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1199.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1199.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1166.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1166.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1172.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1172.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1176.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1176.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1162.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1162.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1189.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1189.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1374.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1374.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1360.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1360.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1348.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1348.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1214.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1214.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1228.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1228.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1002.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1002.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1016.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1016.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1017.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1017.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1003.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1003.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1229.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1229.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1215.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1215.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1201.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1201.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1349.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1349.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1361.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1361.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1375.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1375.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1188.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1188.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1163.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1163.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1177.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1177.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1161.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1161.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1175.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1175.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1149.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1149.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1363.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1363.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1377.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1377.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1388.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1388.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1217.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1217.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1203.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1203.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1015.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1015.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1001.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1001.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1029.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1029.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1028.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1028.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1000.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1000.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1014.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1014.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1202.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1202.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1216.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1216.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1389.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1389.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1376.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1376.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1362.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1362.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1148.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1148.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1174.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1174.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1160.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1160.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1107.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1107.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1113.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1113.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1339.png inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1339.png inflating: bearsWithoutSplitting/grizzly/grizzly_1305.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1305.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1311.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1311.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1259.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1259.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1271.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1271.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1265.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1265.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1073.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1073.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1067.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1067.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1098.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1098.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1099.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1099.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1066.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1066.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1072.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1072.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1264.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1264.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1270.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1270.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1258.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1258.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1304.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1304.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1338.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1338.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1112.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1112.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1106.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1106.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1138.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1138.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1110.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1110.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1104.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1104.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1312.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1312.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1266.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1266.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1272.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1272.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1299.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1299.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1058.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1058.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1064.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1064.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1070.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1070.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1071.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1071.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1065.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1065.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1059.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1059.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1298.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1298.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1273.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1273.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1267.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1267.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1307.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1307.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1313.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1313.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1105.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1105.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1111.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1111.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1139.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1139.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1115.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1115.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1101.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1101.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1129.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1129.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1317.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1317.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1303.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1303.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1263.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1263.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1277.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1277.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1288.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1288.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1061.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1061.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1075.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1075.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1049.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1049.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1048.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1048.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1074.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1074.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1060.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1060.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1289.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1289.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1276.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1276.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1262.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1262.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1302.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1302.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1316.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1316.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1128.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1128.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1100.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1100.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1114.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1114.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1102.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1102.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1116.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1116.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1300.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1300.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1314.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1314.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1328.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1328.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1274.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1274.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1260.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1260.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1248.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1248.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1076.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1076.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1062.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1062.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1089.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1089.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1088.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1088.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1063.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1063.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1077.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1077.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1249.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1249.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1261.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1261.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1275.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1275.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1329.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1329.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1315.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1315.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1301.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1301.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1117.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1117.jpg inflating: bearsWithoutSplitting/grizzly/grizzly_1103.jpg inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1103.jpg
Step 2: Create a generator for the entire dataset and rescale all the images
from tensorflow.keras.preprocessing.image import ImageDataGenerator
# Rescale all images by 1./255
my_generator = ImageDataGenerator(
rescale=1./255)
#Generator for all of the data
all_generator = my_generator.flow_from_directory(
'./bearsWithoutSplitting/',
target_size=(48, 48),
batch_size=4,
class_mode='categorical',
)
Found 1198 images belonging to 3 classes.
Step 3: Verify that generators are working and display an image
import matplotlib.pyplot as plt
for my_batch in all_generator:
# my_batch is a tuple with images and labels
images = my_batch[0]
labels = my_batch[1]
for i in range(len(labels)):
# Gives one image and its corresponding label
plt.imshow(images[i])
plt.colorbar()
plt.show()
print(images[i].shape)
print(labels[i])
break
break
(48, 48, 3) [0. 1. 0.]
Step 4: Build a model and display its structure
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten
from tensorflow.keras import datasets, layers, models
model = models.Sequential()
model.add(layers.Conv2D( 64, ( 3, 3 ), activation = 'relu', input_shape = (48, 48, 3) ) )
model.add(layers.MaxPooling2D(4, 4) )
model.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu' ) )
model.add(layers.MaxPooling2D(2, 2) )
model.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model.add( Flatten() )
model.add( Dense( 32, activation = 'relu' ) )
model.add( Dense( 3, activation = 'softmax' ) )
model.summary()
Model: "sequential_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_3 (Conv2D) (None, 46, 46, 64) 1792
max_pooling2d_2 (MaxPooling (None, 11, 11, 64) 0
2D)
conv2d_4 (Conv2D) (None, 9, 9, 32) 18464
max_pooling2d_3 (MaxPooling (None, 4, 4, 32) 0
2D)
conv2d_5 (Conv2D) (None, 2, 2, 16) 4624
flatten_1 (Flatten) (None, 64) 0
dense_2 (Dense) (None, 32) 2080
dense_3 (Dense) (None, 3) 99
=================================================================
Total params: 27,059
Trainable params: 27,059
Non-trainable params: 0
_________________________________________________________________
Model Summary in Graphical Form
from tensorflow.keras.utils import plot_model
plot_model(model, show_shapes=True, show_layer_names=True)
Step 5: Implement EarlyStopping to cease training once threshold reaches 100 percent
import tensorflow as tf
from keras.callbacks import EarlyStopping, ModelCheckpoint
callback_earlyStopping = EarlyStopping(monitor='accuracy', baseline=1.0, patience=0)
class ThresholdCallback(tf.keras.callbacks.Callback):
def __init__(self, threshold):
super(ThresholdCallback, self).__init__()
self.threshold = threshold
def on_epoch_end(self, epoch, logs=None):
accuracy = logs["accuracy"]
if accuracy >= self.threshold:
self.model.stop_training = True
callback=ThresholdCallback(threshold=1.0)
from tensorflow.keras.metrics import Recall, Precision
model.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])
Step 6: Train the model on one training set
history = model.fit(all_generator, epochs = 40, batch_size = 32, callbacks=[callback])
Epoch 1/40 300/300 [==============================] - 10s 26ms/step - loss: 0.8034 - accuracy: 0.6018 - precision_2: 0.7474 - recall_2: 0.4199 Epoch 2/40 300/300 [==============================] - 8s 27ms/step - loss: 0.4633 - accuracy: 0.8180 - precision_2: 0.8459 - recall_2: 0.7880 Epoch 3/40 300/300 [==============================] - 8s 28ms/step - loss: 0.3535 - accuracy: 0.8648 - precision_2: 0.8863 - recall_2: 0.8523 Epoch 4/40 300/300 [==============================] - 7s 24ms/step - loss: 0.3157 - accuracy: 0.8765 - precision_2: 0.8894 - recall_2: 0.8656 Epoch 5/40 300/300 [==============================] - 8s 27ms/step - loss: 0.2973 - accuracy: 0.8865 - precision_2: 0.8981 - recall_2: 0.8756 Epoch 6/40 300/300 [==============================] - 8s 27ms/step - loss: 0.2475 - accuracy: 0.9057 - precision_2: 0.9118 - recall_2: 0.8973 Epoch 7/40 300/300 [==============================] - 7s 25ms/step - loss: 0.2477 - accuracy: 0.9174 - precision_2: 0.9252 - recall_2: 0.9090 Epoch 8/40 300/300 [==============================] - 8s 28ms/step - loss: 0.2075 - accuracy: 0.9265 - precision_2: 0.9298 - recall_2: 0.9182 Epoch 9/40 300/300 [==============================] - 7s 24ms/step - loss: 0.1787 - accuracy: 0.9416 - precision_2: 0.9452 - recall_2: 0.9366 Epoch 10/40 300/300 [==============================] - 8s 28ms/step - loss: 0.1308 - accuracy: 0.9533 - precision_2: 0.9588 - recall_2: 0.9516 Epoch 11/40 300/300 [==============================] - 8s 28ms/step - loss: 0.1175 - accuracy: 0.9558 - precision_2: 0.9573 - recall_2: 0.9541 Epoch 12/40 300/300 [==============================] - 8s 25ms/step - loss: 0.1321 - accuracy: 0.9533 - precision_2: 0.9563 - recall_2: 0.9491 Epoch 13/40 300/300 [==============================] - 7s 24ms/step - loss: 0.1065 - accuracy: 0.9633 - precision_2: 0.9656 - recall_2: 0.9599 Epoch 14/40 300/300 [==============================] - 8s 27ms/step - loss: 0.1020 - accuracy: 0.9641 - precision_2: 0.9689 - recall_2: 0.9624 Epoch 15/40 300/300 [==============================] - 8s 28ms/step - loss: 0.0692 - accuracy: 0.9766 - precision_2: 0.9774 - recall_2: 0.9741 Epoch 16/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0724 - accuracy: 0.9758 - precision_2: 0.9766 - recall_2: 0.9758 Epoch 17/40 300/300 [==============================] - 8s 28ms/step - loss: 0.0458 - accuracy: 0.9850 - precision_2: 0.9866 - recall_2: 0.9850 Epoch 18/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0463 - accuracy: 0.9883 - precision_2: 0.9899 - recall_2: 0.9866 Epoch 19/40 300/300 [==============================] - 7s 24ms/step - loss: 0.1073 - accuracy: 0.9624 - precision_2: 0.9640 - recall_2: 0.9616 Epoch 20/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0507 - accuracy: 0.9833 - precision_2: 0.9841 - recall_2: 0.9825 Epoch 21/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0207 - accuracy: 0.9967 - precision_2: 0.9967 - recall_2: 0.9958 Epoch 22/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0391 - accuracy: 0.9891 - precision_2: 0.9891 - recall_2: 0.9891 Epoch 23/40 300/300 [==============================] - 8s 28ms/step - loss: 0.0562 - accuracy: 0.9783 - precision_2: 0.9799 - recall_2: 0.9775 Epoch 24/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0248 - accuracy: 0.9925 - precision_2: 0.9925 - recall_2: 0.9925 Epoch 25/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0135 - accuracy: 0.9967 - precision_2: 0.9967 - recall_2: 0.9967 Epoch 26/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0026 - accuracy: 1.0000 - precision_2: 1.0000 - recall_2: 1.0000
Step 7: Display the learning curve of the data not having been split
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history.history['accuracy'])
#plt.plot(history.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history.history['precision_2'])
#plt.plot(history.history['val_precision'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history.history['recall_2'])
#plt.plot(history.history['val_recall'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model.evaluate(all_generator)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
300/300 [==============================] - 8s 27ms/step - loss: 0.0012 - accuracy: 1.0000 - precision_2: 1.0000 - recall_2: 1.0000 validation_acc: 100.00 validation_loss: 0.00 validation_precision: 1.00 validation_recall: 1.00
Create a model with less parameters
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten
from tensorflow.keras import datasets, layers, models
model2 = models.Sequential()
model2.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = (48, 48, 3) ) )
model2.add(layers.MaxPooling2D(4, 4) )
model2.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model2.add(layers.MaxPooling2D(2, 2) )
model2.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model2.add( Flatten() )
model2.add( Dense( 32, activation = 'relu' ) )
model2.add( Dense( 3, activation = 'softmax' ) )
model2.summary()
Model: "sequential_2"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_6 (Conv2D) (None, 46, 46, 32) 896
max_pooling2d_4 (MaxPooling (None, 11, 11, 32) 0
2D)
conv2d_7 (Conv2D) (None, 9, 9, 16) 4624
max_pooling2d_5 (MaxPooling (None, 4, 4, 16) 0
2D)
conv2d_8 (Conv2D) (None, 2, 2, 8) 1160
flatten_2 (Flatten) (None, 32) 0
dense_4 (Dense) (None, 32) 1056
dense_5 (Dense) (None, 3) 99
=================================================================
Total params: 7,835
Trainable params: 7,835
Non-trainable params: 0
_________________________________________________________________
model2.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])
history2 = model2.fit(all_generator, epochs = 40, batch_size = 32, callbacks=[callback])
Epoch 1/40 300/300 [==============================] - 10s 25ms/step - loss: 0.8275 - accuracy: 0.5927 - precision_3: 0.7245 - recall_3: 0.3907 Epoch 2/40 300/300 [==============================] - 9s 28ms/step - loss: 0.5205 - accuracy: 0.7821 - precision_3: 0.8095 - recall_3: 0.7379 Epoch 3/40 300/300 [==============================] - 8s 28ms/step - loss: 0.4250 - accuracy: 0.8306 - precision_3: 0.8501 - recall_3: 0.8097 Epoch 4/40 300/300 [==============================] - 9s 29ms/step - loss: 0.3561 - accuracy: 0.8573 - precision_3: 0.8691 - recall_3: 0.8422 Epoch 5/40 300/300 [==============================] - 8s 27ms/step - loss: 0.3219 - accuracy: 0.8731 - precision_3: 0.8844 - recall_3: 0.8623 Epoch 6/40 300/300 [==============================] - 8s 27ms/step - loss: 0.2872 - accuracy: 0.8907 - precision_3: 0.9013 - recall_3: 0.8840 Epoch 7/40 300/300 [==============================] - 8s 28ms/step - loss: 0.2759 - accuracy: 0.8898 - precision_3: 0.9065 - recall_3: 0.8823 Epoch 8/40 300/300 [==============================] - 8s 28ms/step - loss: 0.2468 - accuracy: 0.8998 - precision_3: 0.9120 - recall_3: 0.8915 Epoch 9/40 300/300 [==============================] - 7s 24ms/step - loss: 0.2313 - accuracy: 0.9124 - precision_3: 0.9195 - recall_3: 0.9057 Epoch 10/40 300/300 [==============================] - 7s 24ms/step - loss: 0.2154 - accuracy: 0.9149 - precision_3: 0.9229 - recall_3: 0.9098 Epoch 11/40 300/300 [==============================] - 7s 24ms/step - loss: 0.1863 - accuracy: 0.9282 - precision_3: 0.9322 - recall_3: 0.9182 Epoch 12/40 300/300 [==============================] - 8s 28ms/step - loss: 0.1899 - accuracy: 0.9224 - precision_3: 0.9329 - recall_3: 0.9174 Epoch 13/40 300/300 [==============================] - 7s 25ms/step - loss: 0.1756 - accuracy: 0.9299 - precision_3: 0.9389 - recall_3: 0.9240 Epoch 14/40 300/300 [==============================] - 7s 24ms/step - loss: 0.1590 - accuracy: 0.9457 - precision_3: 0.9493 - recall_3: 0.9382 Epoch 15/40 300/300 [==============================] - 8s 28ms/step - loss: 0.1240 - accuracy: 0.9558 - precision_3: 0.9588 - recall_3: 0.9516 Epoch 16/40 300/300 [==============================] - 9s 29ms/step - loss: 0.1253 - accuracy: 0.9541 - precision_3: 0.9571 - recall_3: 0.9508 Epoch 17/40 300/300 [==============================] - 8s 27ms/step - loss: 0.1194 - accuracy: 0.9541 - precision_3: 0.9556 - recall_3: 0.9516 Epoch 18/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0884 - accuracy: 0.9683 - precision_3: 0.9715 - recall_3: 0.9658 Epoch 19/40 300/300 [==============================] - 8s 28ms/step - loss: 0.1103 - accuracy: 0.9549 - precision_3: 0.9580 - recall_3: 0.9524 Epoch 20/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0949 - accuracy: 0.9674 - precision_3: 0.9706 - recall_3: 0.9658 Epoch 21/40 300/300 [==============================] - 8s 28ms/step - loss: 0.0630 - accuracy: 0.9758 - precision_3: 0.9766 - recall_3: 0.9758 Epoch 22/40 300/300 [==============================] - 8s 28ms/step - loss: 0.0805 - accuracy: 0.9708 - precision_3: 0.9731 - recall_3: 0.9674 Epoch 23/40 300/300 [==============================] - 8s 26ms/step - loss: 0.0644 - accuracy: 0.9758 - precision_3: 0.9758 - recall_3: 0.9758 Epoch 24/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0442 - accuracy: 0.9841 - precision_3: 0.9849 - recall_3: 0.9825 Epoch 25/40 300/300 [==============================] - 7s 25ms/step - loss: 0.0764 - accuracy: 0.9775 - precision_3: 0.9774 - recall_3: 0.9766 Epoch 26/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0463 - accuracy: 0.9850 - precision_3: 0.9850 - recall_3: 0.9850 Epoch 27/40 300/300 [==============================] - 8s 27ms/step - loss: 0.0273 - accuracy: 0.9891 - precision_3: 0.9900 - recall_3: 0.9883 Epoch 28/40 300/300 [==============================] - 8s 26ms/step - loss: 0.0235 - accuracy: 0.9933 - precision_3: 0.9933 - recall_3: 0.9925 Epoch 29/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0706 - accuracy: 0.9775 - precision_3: 0.9783 - recall_3: 0.9766 Epoch 30/40 300/300 [==============================] - 7s 24ms/step - loss: 0.0405 - accuracy: 0.9875 - precision_3: 0.9875 - recall_3: 0.9858 Epoch 31/40 300/300 [==============================] - 8s 28ms/step - loss: 0.0145 - accuracy: 0.9950 - precision_3: 0.9950 - recall_3: 0.9942 Epoch 32/40 300/300 [==============================] - 8s 26ms/step - loss: 0.0203 - accuracy: 0.9925 - precision_3: 0.9925 - recall_3: 0.9925 Epoch 33/40 300/300 [==============================] - 8s 26ms/step - loss: 0.0049 - accuracy: 1.0000 - precision_3: 1.0000 - recall_3: 1.0000
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history2.history['accuracy'])
#plt.plot(history.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history2.history['precision_3'])
#plt.plot(history.history['val_precision'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history2.history['recall_3'])
#plt.plot(history.history['val_recall'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model2.evaluate(all_generator)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
300/300 [==============================] - 8s 24ms/step - loss: 0.0025 - accuracy: 1.0000 - precision_3: 1.0000 - recall_3: 1.0000 validation_acc: 100.00 validation_loss: 0.00 validation_precision: 1.00 validation_recall: 1.00
Task 2: Split and Evaluate on Test Set
Load and Split the data into 3 groups: training, validation, and testing
! unzip bears_ws.zip
Archive: bears_ws.zip creating: bears/ inflating: bears/.DS_Store inflating: __MACOSX/bears/._.DS_Store creating: bears/test/ creating: bears/training/ creating: bears/validation/ creating: bears/test/polar/ inflating: bears/test/.DS_Store inflating: __MACOSX/bears/test/._.DS_Store creating: bears/test/panda/ creating: bears/test/grizzly/ creating: bears/training/polar/ inflating: bears/training/.DS_Store inflating: __MACOSX/bears/training/._.DS_Store creating: bears/training/panda/ creating: bears/training/grizzly/ creating: bears/validation/polar/ inflating: bears/validation/.DS_Store inflating: __MACOSX/bears/validation/._.DS_Store creating: bears/validation/panda/ creating: bears/validation/grizzly/ inflating: bears/test/polar/polar_1198.jpg inflating: bears/test/polar/polar_1167.jpg inflating: bears/test/polar/polar_1359.jpg inflating: bears/test/polar/polar_1012.jpg inflating: bears/test/polar/polar_1158.jpg inflating: bears/test/polar/polar_1400.jpg inflating: bears/test/polar/polar_1039.jpg inflating: bears/test/polar/polar_1207.jpg inflating: bears/test/polar/polar_1213.jpg inflating: bears/test/polar/polar_1367.jpg inflating: bears/test/polar/polar_1171.jpg inflating: bears/test/polar/polar_1363.png inflating: bears/test/polar/polar_1175.jpg inflating: bears/test/polar/polar_1203.jpg inflating: bears/test/polar/polar_1000.jpg inflating: bears/test/polar/polar_1202.jpg inflating: bears/test/polar/polar_1162.jpg inflating: bears/test/polar/polar_1406.jpg inflating: bears/test/polar/polar_1002.jpg inflating: bears/test/polar/polar_1229.png inflating: bears/test/polar/polar_1163.jpg inflating: bears/test/polar/polar_1361.png inflating: bears/test/polar/polar_1138.jpg inflating: bears/test/polar/polar_1299.jpg inflating: bears/test/polar/polar_1058.jpg inflating: bears/test/polar/polar_1313.jpg inflating: bears/test/polar/polar_1113.jpg inflating: bears/test/polar/polar_1339.jpg inflating: bears/test/polar/polar_1311.jpg inflating: bears/test/polar/polar_1066.jpg inflating: bears/test/polar/polar_1310.jpg inflating: bears/test/polar/polar_1338.jpg inflating: bears/test/polar/polar_1300.jpg inflating: bears/test/polar/polar_1089.jpg inflating: bears/test/polar/polar_1077.jpg inflating: bears/test/polar/polar_1088.jpg inflating: bears/test/polar/polar_1301.jpg inflating: bears/test/polar/polar_1117.jpg inflating: bears/test/polar/polar_1317.jpg inflating: bears/test/polar/polar_1074.jpg inflating: bears/test/polar/polar_1114.jpg inflating: bears/test/polar/polar_1333.jpg inflating: bears/test/polar/polar_1092.jpg inflating: bears/test/polar/polar_1045.jpg inflating: bears/test/polar/polar_1044.jpg inflating: bears/test/polar/polar_1078.jpg inflating: bears/test/polar/polar_1246.jpg inflating: bears/test/polar/polar_1124.jpg inflating: bears/test/polar/polar_1132.jpg inflating: bears/test/polar/polar_1324.jpg inflating: bears/test/polar/polar_1293.jpg inflating: bears/test/polar/polar_1278.jpg inflating: bears/test/polar/polar_1046.jpg inflating: bears/test/polar/polar_1319.jpg inflating: bears/test/polar/polar_1127.jpg inflating: bears/test/polar/polar_1137.jpg inflating: bears/test/polar/polar_1057.jpg inflating: bears/test/polar/polar_1056.jpg inflating: bears/test/polar/polar_1297.jpg inflating: bears/test/polar/polar_1334.jpg inflating: bears/test/polar/polar_1120.jpg inflating: bears/test/polar/polar_1041.jpg inflating: bears/test/polar/polar_1096.jpg inflating: bears/test/polar/polar_1294.jpg inflating: bears/test/polar/polar_1337.jpg inflating: bears/test/polar/polar_1378.jpg inflating: bears/test/polar/polar_1379.jpg inflating: bears/test/polar/polar_1386.jpg inflating: bears/test/polar/polar_1392.jpg inflating: bears/test/polar/polar_1153.jpg inflating: bears/test/polar/polar_1233.jpg inflating: bears/test/polar/polar_1391.jpg inflating: bears/test/polar/polar_1008.jpg inflating: bears/test/polar/polar_1035.jpg inflating: bears/test/polar/polar_1237.jpg inflating: bears/test/polar/polar_1357.jpg inflating: bears/test/polar/polar_1343.jpg inflating: bears/test/polar/polar_1141.jpg inflating: bears/test/polar/polar_1157.jpg inflating: bears/test/polar/polar_1355.jpg inflating: bears/test/polar/polar_1369.jpg inflating: bears/test/polar/polar_1235.jpg inflating: bears/test/polar/polar_1022.jpg inflating: bears/test/polar/polar_1181.jpg inflating: bears/test/polar/polar_1195.jpg inflating: bears/test/panda/panda_1167.jpg inflating: bears/test/panda/panda_1007.jpg inflating: bears/test/panda/panda_1012.jpg inflating: bears/test/panda/panda_1170.jpg inflating: bears/test/panda/panda_1011.jpg inflating: bears/test/panda/panda_1401.jpg inflating: bears/test/panda/panda_1171.jpg inflating: bears/test/panda/panda_1377.jpg inflating: bears/test/panda/panda_1203.jpg inflating: bears/test/panda/panda_1216.jpg inflating: bears/test/panda/panda_1174.jpg inflating: bears/test/panda/panda_1200.jpg inflating: bears/test/panda/panda_1016.jpg inflating: bears/test/panda/panda_1002.jpg inflating: bears/test/panda/panda_1375.jpg inflating: bears/test/panda/panda_1361.jpg inflating: bears/test/panda/panda_1138.jpg inflating: bears/test/panda/panda_1266.jpg inflating: bears/test/panda/panda_1070.jpg inflating: bears/test/panda/panda_1064.jpg inflating: bears/test/panda/panda_1065.jpg inflating: bears/test/panda/panda_1059.jpg inflating: bears/test/panda/panda_1298.jpg inflating: bears/test/panda/panda_1267.jpg inflating: bears/test/panda/panda_1313.jpg inflating: bears/test/panda/panda_1311.jpg inflating: bears/test/panda/panda_1098.jpg inflating: bears/test/panda/panda_1099.jpg inflating: bears/test/panda/panda_1310.jpg inflating: bears/test/panda/panda_1338.jpg inflating: bears/test/panda/panda_1314.jpg inflating: bears/test/panda/panda_1261.jpg inflating: bears/test/panda/panda_1263.jpg inflating: bears/test/panda/panda_1262.jpg inflating: bears/test/panda/panda_1276.jpg inflating: bears/test/panda/panda_1114.jpg inflating: bears/test/panda/panda_1119.jpg inflating: bears/test/panda/panda_1327.jpg inflating: bears/test/panda/panda_1284.jpg inflating: bears/test/panda/panda_1086.jpg inflating: bears/test/panda/panda_1044.jpg inflating: bears/test/panda/panda_1285.jpg inflating: bears/test/panda/panda_1250.jpg inflating: bears/test/panda/panda_1091.jpg inflating: bears/test/panda/panda_1292.jpg inflating: bears/test/panda/panda_1251.jpg inflating: bears/test/panda/panda_1245.jpg inflating: bears/test/panda/panda_1331.jpg inflating: bears/test/panda/panda_1321.png inflating: bears/test/panda/panda_1296.jpg inflating: bears/test/panda/panda_1334.jpg inflating: bears/test/panda/panda_1122.jpg inflating: bears/test/panda/panda_1120.jpg inflating: bears/test/panda/panda_1322.jpg inflating: bears/test/panda/panda_1040.jpg inflating: bears/test/panda/panda_1097.jpg inflating: bears/test/panda/panda_1096.jpg inflating: bears/test/panda/panda_1323.jpg inflating: bears/test/panda/panda_1378.jpg inflating: bears/test/panda/panda_1230.jpg inflating: bears/test/panda/panda_1224.jpg inflating: bears/test/panda/panda_1026.jpg inflating: bears/test/panda/panda_1225.jpg inflating: bears/test/panda/panda_1386.jpg inflating: bears/test/panda/panda_1147.jpg inflating: bears/test/panda/panda_1145.jpg inflating: bears/test/panda/panda_1186.jpg inflating: bears/test/panda/panda_1232.jpg inflating: bears/test/panda/panda_1346.jpg inflating: bears/test/panda/panda_1342.jpg inflating: bears/test/panda/panda_1222.jpg inflating: bears/test/panda/panda_1237.jpg inflating: bears/test/panda/panda_1357.jpg inflating: bears/test/panda/panda_1182.jpg inflating: bears/test/panda/panda_1141.jpg inflating: bears/test/panda/panda_1341.jpg inflating: bears/test/panda/panda_1382.jpg inflating: bears/test/panda/panda_1221.jpg inflating: bears/test/panda/panda_1023.jpg inflating: bears/test/panda/panda_1208.jpg inflating: bears/test/panda/panda_1220.jpg inflating: bears/test/panda/panda_1234.jpg inflating: bears/test/panda/panda_1354.jpg inflating: bears/test/panda/panda_1340.jpg inflating: bears/test/panda/panda_1142.jpg inflating: bears/test/grizzly/grizzly_1126.jpg inflating: bears/test/grizzly/grizzly_1324.jpg inflating: bears/test/grizzly/grizzly_1330.jpg inflating: bears/test/grizzly/grizzly_1250.jpg inflating: bears/test/grizzly/grizzly_1287.jpg inflating: bears/test/grizzly/grizzly_1046.jpg inflating: bears/test/grizzly/grizzly_1091.jpg inflating: bears/test/grizzly/grizzly_1090.jpg inflating: bears/test/grizzly/grizzly_1047.jpg inflating: bears/test/grizzly/grizzly_1286.jpg inflating: bears/test/grizzly/grizzly_1251.jpg inflating: bears/test/grizzly/grizzly_1325.jpg inflating: bears/test/grizzly/grizzly_1290.jpg inflating: bears/test/grizzly/grizzly_1050.jpg inflating: bears/test/grizzly/grizzly_1285.jpg inflating: bears/test/grizzly/grizzly_1322.jpg inflating: bears/test/grizzly/grizzly_1256.jpg inflating: bears/test/grizzly/grizzly_1054.jpg inflating: bears/test/grizzly/grizzly_1096.jpg inflating: bears/test/grizzly/grizzly_1055.jpg inflating: bears/test/grizzly/grizzly_1296.jpg inflating: bears/test/grizzly/grizzly_1080.jpg inflating: bears/test/grizzly/grizzly_1151.jpg inflating: bears/test/grizzly/grizzly_1353.jpg inflating: bears/test/grizzly/grizzly_1384.jpg inflating: bears/test/grizzly/grizzly_1024.jpg inflating: bears/test/grizzly/grizzly_1030.jpg inflating: bears/test/grizzly/grizzly_1391.jpg inflating: bears/test/grizzly/grizzly_1152.jpg inflating: bears/test/grizzly/grizzly_1350.jpg inflating: bears/test/grizzly/grizzly_1393.jpg inflating: bears/test/grizzly/grizzly_1230.jpg inflating: bears/test/grizzly/grizzly_1225.jpg inflating: bears/test/grizzly/grizzly_1219.jpg inflating: bears/test/grizzly/grizzly_1369.jpg inflating: bears/test/grizzly/grizzly_1396.jpg inflating: bears/test/grizzly/grizzly_1382.jpg inflating: bears/test/grizzly/grizzly_1023.jpg inflating: bears/test/grizzly/grizzly_1037.jpg inflating: bears/test/grizzly/grizzly_1383.jpg inflating: bears/test/grizzly/grizzly_1154.jpg inflating: bears/test/grizzly/grizzly_1168.jpg inflating: bears/test/grizzly/grizzly_1236.jpg inflating: bears/test/grizzly/grizzly_1008.jpg inflating: bears/test/grizzly/grizzly_1158.jpg inflating: bears/test/grizzly/grizzly_1372.jpg inflating: bears/test/grizzly/grizzly_1038.jpg inflating: bears/test/grizzly/grizzly_1004.jpg inflating: bears/test/grizzly/grizzly_1005.jpg inflating: bears/test/grizzly/grizzly_1213.jpg inflating: bears/test/grizzly/grizzly_1373.jpg inflating: bears/test/grizzly/grizzly_1173.jpg inflating: bears/test/grizzly/grizzly_1198.jpg inflating: bears/test/grizzly/grizzly_1199.jpg inflating: bears/test/grizzly/grizzly_1162.jpg inflating: bears/test/grizzly/grizzly_1003.jpg inflating: bears/test/grizzly/grizzly_1188.jpg inflating: bears/test/grizzly/grizzly_1163.jpg inflating: bears/test/grizzly/grizzly_1161.jpg inflating: bears/test/grizzly/grizzly_1377.jpg inflating: bears/test/grizzly/grizzly_1000.jpg inflating: bears/test/grizzly/grizzly_1311.jpg inflating: bears/test/grizzly/grizzly_1259.jpg inflating: bears/test/grizzly/grizzly_1307.jpg inflating: bears/test/grizzly/grizzly_1105.jpg inflating: bears/test/grizzly/grizzly_1317.jpg inflating: bears/test/grizzly/grizzly_1060.jpg inflating: bears/test/grizzly/grizzly_1114.jpg inflating: bears/test/grizzly/grizzly_1076.jpg inflating: bears/test/grizzly/grizzly_1103.jpg inflating: bears/training/polar/polar_1173.jpg inflating: bears/training/polar/polar_1371.jpg inflating: bears/training/polar/polar_1403.jpg inflating: bears/training/polar/polar_1239.jpg inflating: bears/training/polar/polar_1205.jpg inflating: bears/training/polar/polar_1007.jpg inflating: bears/training/polar/polar_1013.jpg inflating: bears/training/polar/polar_1006.jpg inflating: bears/training/polar/polar_1210.jpg inflating: bears/training/polar/polar_1238.jpg inflating: bears/training/polar/polar_1402.jpg inflating: bears/training/polar/polar_1364.jpg inflating: bears/training/polar/polar_1370.jpg inflating: bears/training/polar/polar_1358.jpg inflating: bears/training/polar/polar_1166.jpg inflating: bears/training/polar/polar_1172.jpg inflating: bears/training/polar/polar_1199.jpg inflating: bears/training/polar/polar_1399.jpg inflating: bears/training/polar/polar_1366.jpg inflating: bears/training/polar/polar_1372.jpg inflating: bears/training/polar/polar_1038.jpg inflating: bears/training/polar/polar_1010.jpg inflating: bears/training/polar/polar_1004.jpg inflating: bears/training/polar/polar_1005.jpg inflating: bears/training/polar/polar_1011.jpg inflating: bears/training/polar/polar_1373.jpg inflating: bears/training/polar/polar_1401.jpg inflating: bears/training/polar/polar_1398.jpg inflating: bears/training/polar/polar_1165.jpg inflating: bears/training/polar/polar_1405.jpg inflating: bears/training/polar/polar_1377.jpg inflating: bears/training/polar/polar_1411.jpg inflating: bears/training/polar/polar_1217.jpg inflating: bears/training/polar/polar_1015.jpg inflating: bears/training/polar/polar_1001.jpg inflating: bears/training/polar/polar_1029.jpg inflating: bears/training/polar/polar_1014.jpg inflating: bears/training/polar/polar_1216.jpg inflating: bears/training/polar/polar_1410.jpg inflating: bears/training/polar/polar_1404.jpg inflating: bears/training/polar/polar_1362.jpg inflating: bears/training/polar/polar_1389.jpg inflating: bears/training/polar/polar_1148.jpg inflating: bears/training/polar/polar_1174.jpg inflating: bears/training/polar/polar_1360.png inflating: bears/training/polar/polar_1189.jpg inflating: bears/training/polar/polar_1348.png inflating: bears/training/polar/polar_1176.jpg inflating: bears/training/polar/polar_1374.jpg inflating: bears/training/polar/polar_1200.jpg inflating: bears/training/polar/polar_1214.jpg inflating: bears/training/polar/polar_1228.jpg inflating: bears/training/polar/polar_1016.jpg inflating: bears/training/polar/polar_1003.jpg inflating: bears/training/polar/polar_1215.jpg inflating: bears/training/polar/polar_1201.jpg inflating: bears/training/polar/polar_1349.jpg inflating: bears/training/polar/polar_1407.jpg inflating: bears/training/polar/polar_1375.jpg inflating: bears/training/polar/polar_1177.jpg inflating: bears/training/polar/polar_1188.jpg inflating: bears/training/polar/polar_1312.jpg inflating: bears/training/polar/polar_1306.jpg inflating: bears/training/polar/polar_1266.jpg inflating: bears/training/polar/polar_1272.jpg inflating: bears/training/polar/polar_1064.jpg inflating: bears/training/polar/polar_1070.jpg inflating: bears/training/polar/polar_1071.jpg inflating: bears/training/polar/polar_1065.jpg inflating: bears/training/polar/polar_1059.jpg inflating: bears/training/polar/polar_1273.jpg inflating: bears/training/polar/polar_1267.jpg inflating: bears/training/polar/polar_1298.jpg inflating: bears/training/polar/polar_1105.jpg inflating: bears/training/polar/polar_1111.jpg inflating: bears/training/polar/polar_1139.jpg inflating: bears/training/polar/polar_1107.jpg inflating: bears/training/polar/polar_1259.jpg inflating: bears/training/polar/polar_1271.jpg inflating: bears/training/polar/polar_1265.jpg inflating: bears/training/polar/polar_1098.jpg inflating: bears/training/polar/polar_1073.jpg inflating: bears/training/polar/polar_1067.jpg inflating: bears/training/polar/polar_1099.jpg inflating: bears/training/polar/polar_1264.jpg inflating: bears/training/polar/polar_1270.jpg inflating: bears/training/polar/polar_1258.jpg inflating: bears/training/polar/polar_1304.jpg inflating: bears/training/polar/polar_1112.jpg inflating: bears/training/polar/polar_1106.jpg inflating: bears/training/polar/polar_1102.jpg inflating: bears/training/polar/polar_1314.jpg inflating: bears/training/polar/polar_1076.jpg inflating: bears/training/polar/polar_1062.jpg inflating: bears/training/polar/polar_1063.jpg inflating: bears/training/polar/polar_1249.jpg inflating: bears/training/polar/polar_1261.jpg inflating: bears/training/polar/polar_1275.jpg inflating: bears/training/polar/polar_1329.jpg inflating: bears/training/polar/polar_1315.jpg inflating: bears/training/polar/polar_1103.jpg inflating: bears/training/polar/polar_1115.jpg inflating: bears/training/polar/polar_1101.jpg inflating: bears/training/polar/polar_1303.jpg inflating: bears/training/polar/polar_1288.jpg inflating: bears/training/polar/polar_1277.jpg inflating: bears/training/polar/polar_1061.jpg inflating: bears/training/polar/polar_1075.jpg inflating: bears/training/polar/polar_1048.jpg inflating: bears/training/polar/polar_1060.jpg inflating: bears/training/polar/polar_1276.jpg inflating: bears/training/polar/polar_1289.jpg inflating: bears/training/polar/polar_1302.jpg inflating: bears/training/polar/polar_1316.jpg inflating: bears/training/polar/polar_1128.jpg inflating: bears/training/polar/polar_1119.jpg inflating: bears/training/polar/polar_1131.jpg inflating: bears/training/polar/polar_1125.jpg inflating: bears/training/polar/polar_1327.jpg inflating: bears/training/polar/polar_1284.jpg inflating: bears/training/polar/polar_1290.jpg inflating: bears/training/polar/polar_1247.jpg inflating: bears/training/polar/polar_1086.jpg inflating: bears/training/polar/polar_1051.jpg inflating: bears/training/polar/polar_1050.jpg inflating: bears/training/polar/polar_1087.jpg inflating: bears/training/polar/polar_1252.jpg inflating: bears/training/polar/polar_1291.jpg inflating: bears/training/polar/polar_1285.jpg inflating: bears/training/polar/polar_1332.jpg inflating: bears/training/polar/polar_1130.jpg inflating: bears/training/polar/polar_1126.jpg inflating: bears/training/polar/polar_1318.jpg inflating: bears/training/polar/polar_1287.jpg inflating: bears/training/polar/polar_1250.jpg inflating: bears/training/polar/polar_1244.jpg inflating: bears/training/polar/polar_1091.jpg inflating: bears/training/polar/polar_1052.jpg inflating: bears/training/polar/polar_1053.jpg inflating: bears/training/polar/polar_1090.jpg inflating: bears/training/polar/polar_1245.jpg inflating: bears/training/polar/polar_1251.jpg inflating: bears/training/polar/polar_1279.jpg inflating: bears/training/polar/polar_1286.jpg inflating: bears/training/polar/polar_1292.jpg inflating: bears/training/polar/polar_1331.jpg inflating: bears/training/polar/polar_1325.jpg inflating: bears/training/polar/polar_1133.jpg inflating: bears/training/polar/polar_1123.jpg inflating: bears/training/polar/polar_1321.jpg inflating: bears/training/polar/polar_1335.jpg inflating: bears/training/polar/polar_1296.jpg inflating: bears/training/polar/polar_1255.jpg inflating: bears/training/polar/polar_1241.jpg inflating: bears/training/polar/polar_1269.jpg inflating: bears/training/polar/polar_1043.jpg inflating: bears/training/polar/polar_1042.jpg inflating: bears/training/polar/polar_1081.jpg inflating: bears/training/polar/polar_1095.jpg inflating: bears/training/polar/polar_1268.jpg inflating: bears/training/polar/polar_1240.jpg inflating: bears/training/polar/polar_1254.jpg inflating: bears/training/polar/polar_1283.jpg inflating: bears/training/polar/polar_1308.jpg inflating: bears/training/polar/polar_1136.jpg inflating: bears/training/polar/polar_1122.jpg inflating: bears/training/polar/polar_1134.jpg inflating: bears/training/polar/polar_1108.jpg inflating: bears/training/polar/polar_1336.jpg inflating: bears/training/polar/polar_1322.jpg inflating: bears/training/polar/polar_1281.jpg inflating: bears/training/polar/polar_1256.jpg inflating: bears/training/polar/polar_1083.jpg inflating: bears/training/polar/polar_1097.jpg inflating: bears/training/polar/polar_1040.jpg inflating: bears/training/polar/polar_1054.jpg inflating: bears/training/polar/polar_1068.jpg inflating: bears/training/polar/polar_1069.jpg inflating: bears/training/polar/polar_1257.jpg inflating: bears/training/polar/polar_1243.jpg inflating: bears/training/polar/polar_1280.jpg inflating: bears/training/polar/polar_1323.jpg inflating: bears/training/polar/polar_1121.jpg inflating: bears/training/polar/polar_1135.jpg inflating: bears/training/polar/polar_1152.jpg inflating: bears/training/polar/polar_1146.jpg inflating: bears/training/polar/polar_1393.jpg inflating: bears/training/polar/polar_1387.jpg inflating: bears/training/polar/polar_1350.jpg inflating: bears/training/polar/polar_1344.jpg inflating: bears/training/polar/polar_1218.jpg inflating: bears/training/polar/polar_1224.jpg inflating: bears/training/polar/polar_1026.jpg inflating: bears/training/polar/polar_1033.jpg inflating: bears/training/polar/polar_1027.jpg inflating: bears/training/polar/polar_1225.jpg inflating: bears/training/polar/polar_1219.jpg inflating: bears/training/polar/polar_1345.jpg inflating: bears/training/polar/polar_1190.jpg inflating: bears/training/polar/polar_1192.jpg inflating: bears/training/polar/polar_1347.png inflating: bears/training/polar/polar_1179.jpg inflating: bears/training/polar/polar_1390.jpg inflating: bears/training/polar/polar_1409.jpg inflating: bears/training/polar/polar_1227.jpg inflating: bears/training/polar/polar_1019.jpg inflating: bears/training/polar/polar_1024.jpg inflating: bears/training/polar/polar_1018.jpg inflating: bears/training/polar/polar_1226.jpg inflating: bears/training/polar/polar_1232.jpg inflating: bears/training/polar/polar_1346.jpg inflating: bears/training/polar/polar_1408.jpg inflating: bears/training/polar/polar_1150.jpg inflating: bears/training/polar/polar_1193.jpg inflating: bears/training/polar/polar_1187.jpg inflating: bears/training/polar/polar_1352.png inflating: bears/training/polar/polar_1140.jpg inflating: bears/training/polar/polar_1154.jpg inflating: bears/training/polar/polar_1381.jpg inflating: bears/training/polar/polar_1342.jpg inflating: bears/training/polar/polar_1356.jpg inflating: bears/training/polar/polar_1236.jpg inflating: bears/training/polar/polar_1034.jpg inflating: bears/training/polar/polar_1020.jpg inflating: bears/training/polar/polar_1009.jpg inflating: bears/training/polar/polar_1021.jpg inflating: bears/training/polar/polar_1223.jpg inflating: bears/training/polar/polar_1155.jpg inflating: bears/training/polar/polar_1196.jpg inflating: bears/training/polar/polar_1182.jpg inflating: bears/training/polar/polar_1194.jpg inflating: bears/training/polar/polar_1180.jpg inflating: bears/training/polar/polar_1143.jpg inflating: bears/training/polar/polar_1382.jpg inflating: bears/training/polar/polar_1341.jpg inflating: bears/training/polar/polar_1221.jpg inflating: bears/training/polar/polar_1209.jpg inflating: bears/training/polar/polar_1037.jpg inflating: bears/training/polar/polar_1036.jpg inflating: bears/training/polar/polar_1208.jpg inflating: bears/training/polar/polar_1234.jpg inflating: bears/training/polar/polar_1220.jpg inflating: bears/training/polar/polar_1368.jpg inflating: bears/training/polar/polar_1383.jpg inflating: bears/training/polar/polar_1397.jpg inflating: bears/training/polar/polar_1142.jpg inflating: bears/training/polar/polar_1156.jpg inflating: bears/training/polar/polar_1354.png inflating: bears/training/panda/panda_1173.jpg inflating: bears/training/panda/panda_1198.jpg inflating: bears/training/panda/panda_1359.jpg inflating: bears/training/panda/panda_1365.jpg inflating: bears/training/panda/panda_1371.jpg inflating: bears/training/panda/panda_1239.jpg inflating: bears/training/panda/panda_1211.jpg inflating: bears/training/panda/panda_1013.jpg inflating: bears/training/panda/panda_1006.jpg inflating: bears/training/panda/panda_1204.jpg inflating: bears/training/panda/panda_1210.jpg inflating: bears/training/panda/panda_1238.jpg inflating: bears/training/panda/panda_1402.jpg inflating: bears/training/panda/panda_1364.jpg inflating: bears/training/panda/panda_1358.jpg inflating: bears/training/panda/panda_1199.jpg inflating: bears/training/panda/panda_1172.jpg inflating: bears/training/panda/panda_1166.jpg inflating: bears/training/panda/panda_1164.jpg inflating: bears/training/panda/panda_1372.jpg inflating: bears/training/panda/panda_1366.jpg inflating: bears/training/panda/panda_1400.jpg inflating: bears/training/panda/panda_1399.jpg inflating: bears/training/panda/panda_1206.jpg inflating: bears/training/panda/panda_1212.jpg inflating: bears/training/panda/panda_1038.jpg inflating: bears/training/panda/panda_1010.jpg inflating: bears/training/panda/panda_1005.jpg inflating: bears/training/panda/panda_1039.jpg inflating: bears/training/panda/panda_1213.jpg inflating: bears/training/panda/panda_1398.jpg inflating: bears/training/panda/panda_1367.jpg inflating: bears/training/panda/panda_1373.jpg inflating: bears/training/panda/panda_1165.jpg inflating: bears/training/panda/panda_1159.jpg inflating: bears/training/panda/panda_1175.jpg inflating: bears/training/panda/panda_1363.jpg inflating: bears/training/panda/panda_1217.jpg inflating: bears/training/panda/panda_1001.jpg inflating: bears/training/panda/panda_1029.jpg inflating: bears/training/panda/panda_1014.jpg inflating: bears/training/panda/panda_1000.jpg inflating: bears/training/panda/panda_1202.jpg inflating: bears/training/panda/panda_1389.jpg inflating: bears/training/panda/panda_1362.jpg inflating: bears/training/panda/panda_1376.jpg inflating: bears/training/panda/panda_1160.jpg inflating: bears/training/panda/panda_1176.jpg inflating: bears/training/panda/panda_1189.jpg inflating: bears/training/panda/panda_1374.jpg inflating: bears/training/panda/panda_1214.jpg inflating: bears/training/panda/panda_1228.jpg inflating: bears/training/panda/panda_1017.jpg inflating: bears/training/panda/panda_1229.jpg inflating: bears/training/panda/panda_1201.jpg inflating: bears/training/panda/panda_1349.jpg inflating: bears/training/panda/panda_1188.jpg inflating: bears/training/panda/panda_1177.jpg inflating: bears/training/panda/panda_1163.jpg inflating: bears/training/panda/panda_1104.jpg inflating: bears/training/panda/panda_1110.jpg inflating: bears/training/panda/panda_1306.jpg inflating: bears/training/panda/panda_1312.jpg inflating: bears/training/panda/panda_1272.jpg inflating: bears/training/panda/panda_1299.jpg inflating: bears/training/panda/panda_1058.jpg inflating: bears/training/panda/panda_1071.jpg inflating: bears/training/panda/panda_1273.jpg inflating: bears/training/panda/panda_1307.jpg inflating: bears/training/panda/panda_1111.jpg inflating: bears/training/panda/panda_1105.jpg inflating: bears/training/panda/panda_1139.jpg inflating: bears/training/panda/panda_1113.jpg inflating: bears/training/panda/panda_1107.jpg inflating: bears/training/panda/panda_1305.jpg inflating: bears/training/panda/panda_1259.jpg inflating: bears/training/panda/panda_1265.jpg inflating: bears/training/panda/panda_1271.jpg inflating: bears/training/panda/panda_1067.jpg inflating: bears/training/panda/panda_1072.jpg inflating: bears/training/panda/panda_1066.jpg inflating: bears/training/panda/panda_1270.jpg inflating: bears/training/panda/panda_1264.jpg inflating: bears/training/panda/panda_1258.jpg inflating: bears/training/panda/panda_1106.jpg inflating: bears/training/panda/panda_1116.jpg inflating: bears/training/panda/panda_1300.jpg inflating: bears/training/panda/panda_1260.jpg inflating: bears/training/panda/panda_1274.jpg inflating: bears/training/panda/panda_1248.jpg inflating: bears/training/panda/panda_1062.jpg inflating: bears/training/panda/panda_1076.jpg inflating: bears/training/panda/panda_1088.jpg inflating: bears/training/panda/panda_1063.jpg inflating: bears/training/panda/panda_1249.jpg inflating: bears/training/panda/panda_1301.jpg inflating: bears/training/panda/panda_1103.jpg inflating: bears/training/panda/panda_1117.jpg inflating: bears/training/panda/panda_1101.jpg inflating: bears/training/panda/panda_1115.jpg inflating: bears/training/panda/panda_1129.jpg inflating: bears/training/panda/panda_1303.jpg inflating: bears/training/panda/panda_1317.jpg inflating: bears/training/panda/panda_1277.jpg inflating: bears/training/panda/panda_1288.jpg inflating: bears/training/panda/panda_1075.jpg inflating: bears/training/panda/panda_1061.jpg inflating: bears/training/panda/panda_1049.jpg inflating: bears/training/panda/panda_1060.jpg inflating: bears/training/panda/panda_1074.jpg inflating: bears/training/panda/panda_1289.jpg inflating: bears/training/panda/panda_1316.jpg inflating: bears/training/panda/panda_1128.jpg inflating: bears/training/panda/panda_1100.jpg inflating: bears/training/panda/panda_1125.jpg inflating: bears/training/panda/panda_1079.jpg inflating: bears/training/panda/panda_1051.jpg inflating: bears/training/panda/panda_1045.jpg inflating: bears/training/panda/panda_1093.jpg inflating: bears/training/panda/panda_1050.jpg inflating: bears/training/panda/panda_1078.jpg inflating: bears/training/panda/panda_1291.jpg inflating: bears/training/panda/panda_1246.jpg inflating: bears/training/panda/panda_1252.jpg inflating: bears/training/panda/panda_1332.jpg inflating: bears/training/panda/panda_1326.jpg inflating: bears/training/panda/panda_1130.jpg inflating: bears/training/panda/panda_1124.jpg inflating: bears/training/panda/panda_1118.jpg inflating: bears/training/panda/panda_1132.jpg inflating: bears/training/panda/panda_1318.jpg inflating: bears/training/panda/panda_1330.jpg inflating: bears/training/panda/panda_1244.jpg inflating: bears/training/panda/panda_1287.jpg inflating: bears/training/panda/panda_1293.jpg inflating: bears/training/panda/panda_1046.jpg inflating: bears/training/panda/panda_1085.jpg inflating: bears/training/panda/panda_1090.jpg inflating: bears/training/panda/panda_1053.jpg inflating: bears/training/panda/panda_1047.jpg inflating: bears/training/panda/panda_1286.jpg inflating: bears/training/panda/panda_1279.jpg inflating: bears/training/panda/panda_1325.jpg inflating: bears/training/panda/panda_1127.jpg inflating: bears/training/panda/panda_1137.jpg inflating: bears/training/panda/panda_1335.png inflating: bears/training/panda/panda_1309.jpg inflating: bears/training/panda/panda_1255.jpg inflating: bears/training/panda/panda_1282.jpg inflating: bears/training/panda/panda_1057.jpg inflating: bears/training/panda/panda_1094.jpg inflating: bears/training/panda/panda_1269.png inflating: bears/training/panda/panda_1095.jpg inflating: bears/training/panda/panda_1056.jpg inflating: bears/training/panda/panda_1297.jpg inflating: bears/training/panda/panda_1254.jpg inflating: bears/training/panda/panda_1308.jpg inflating: bears/training/panda/panda_1320.jpg inflating: bears/training/panda/panda_1136.jpg inflating: bears/training/panda/panda_1134.jpg inflating: bears/training/panda/panda_1108.jpg inflating: bears/training/panda/panda_1256.jpg inflating: bears/training/panda/panda_1242.jpg inflating: bears/training/panda/panda_1295.jpg inflating: bears/training/panda/panda_1068.jpg inflating: bears/training/panda/panda_1083.jpg inflating: bears/training/panda/panda_1069.jpg inflating: bears/training/panda/panda_1041.jpg inflating: bears/training/panda/panda_1055.jpg inflating: bears/training/panda/panda_1280.jpg inflating: bears/training/panda/panda_1243.jpg inflating: bears/training/panda/panda_1257.jpg inflating: bears/training/panda/panda_1337.jpg inflating: bears/training/panda/panda_1135.jpg inflating: bears/training/panda/panda_1121.jpg inflating: bears/training/panda/panda_1185.jpg inflating: bears/training/panda/panda_1344.jpg inflating: bears/training/panda/panda_1350.jpg inflating: bears/training/panda/panda_1218.jpg inflating: bears/training/panda/panda_1032.jpg inflating: bears/training/panda/panda_1027.jpg inflating: bears/training/panda/panda_1231.jpg inflating: bears/training/panda/panda_1219.jpg inflating: bears/training/panda/panda_1351.jpg inflating: bears/training/panda/panda_1345.jpg inflating: bears/training/panda/panda_1379.jpg inflating: bears/training/panda/panda_1390.png inflating: bears/training/panda/panda_1192.jpg inflating: bears/training/panda/panda_1347.png inflating: bears/training/panda/panda_1227.jpg inflating: bears/training/panda/panda_1233.jpg inflating: bears/training/panda/panda_1019.jpg inflating: bears/training/panda/panda_1025.jpg inflating: bears/training/panda/panda_1031.jpg inflating: bears/training/panda/panda_1024.jpg inflating: bears/training/panda/panda_1018.jpg inflating: bears/training/panda/panda_1226.jpg inflating: bears/training/panda/panda_1385.jpg inflating: bears/training/panda/panda_1391.jpg inflating: bears/training/panda/panda_1352.jpg inflating: bears/training/panda/panda_1187.jpg inflating: bears/training/panda/panda_1193.jpg inflating: bears/training/panda/panda_1150.jpg inflating: bears/training/panda/panda_1178.jpg inflating: bears/training/panda/panda_1154.jpg inflating: bears/training/panda/panda_1140.jpg inflating: bears/training/panda/panda_1197.jpg inflating: bears/training/panda/panda_1183.jpg inflating: bears/training/panda/panda_1356.jpg inflating: bears/training/panda/panda_1395.jpg inflating: bears/training/panda/panda_1381.jpg inflating: bears/training/panda/panda_1236.jpg inflating: bears/training/panda/panda_1020.jpg inflating: bears/training/panda/panda_1034.jpg inflating: bears/training/panda/panda_1008.jpg inflating: bears/training/panda/panda_1035.jpg inflating: bears/training/panda/panda_1021.jpg inflating: bears/training/panda/panda_1223.jpg inflating: bears/training/panda/panda_1380.jpg inflating: bears/training/panda/panda_1394.jpg inflating: bears/training/panda/panda_1343.jpg inflating: bears/training/panda/panda_1196.jpg inflating: bears/training/panda/panda_1169.jpg inflating: bears/training/panda/panda_1143.jpg inflating: bears/training/panda/panda_1157.jpg inflating: bears/training/panda/panda_1194.jpg inflating: bears/training/panda/panda_1369.jpg inflating: bears/training/panda/panda_1396.jpg inflating: bears/training/panda/panda_1235.jpg inflating: bears/training/panda/panda_1209.jpg inflating: bears/training/panda/panda_1037.jpg inflating: bears/training/panda/panda_1022.jpg inflating: bears/training/panda/panda_1036.jpg inflating: bears/training/panda/panda_1397.jpg inflating: bears/training/panda/panda_1368.jpg inflating: bears/training/panda/panda_1181.jpg inflating: bears/training/panda/panda_1156.jpg inflating: bears/training/grizzly/grizzly_1132.jpg inflating: bears/training/grizzly/grizzly_1318.jpg inflating: bears/training/grizzly/grizzly_1278.jpg inflating: bears/training/grizzly/grizzly_1244.jpg inflating: bears/training/grizzly/grizzly_1293.jpg inflating: bears/training/grizzly/grizzly_1052.jpg inflating: bears/training/grizzly/grizzly_1085.jpg inflating: bears/training/grizzly/grizzly_1084.jpg inflating: bears/training/grizzly/grizzly_1053.jpg inflating: bears/training/grizzly/grizzly_1245.jpg inflating: bears/training/grizzly/grizzly_1279.jpg inflating: bears/training/grizzly/grizzly_1331.jpg inflating: bears/training/grizzly/grizzly_1319.jpg inflating: bears/training/grizzly/grizzly_1133.jpg inflating: bears/training/grizzly/grizzly_1127.jpg inflating: bears/training/grizzly/grizzly_1119.jpg inflating: bears/training/grizzly/grizzly_1131.jpg inflating: bears/training/grizzly/grizzly_1125.jpg inflating: bears/training/grizzly/grizzly_1333.png inflating: bears/training/grizzly/grizzly_1247.jpg inflating: bears/training/grizzly/grizzly_1284.jpg inflating: bears/training/grizzly/grizzly_1045.jpg inflating: bears/training/grizzly/grizzly_1051.jpg inflating: bears/training/grizzly/grizzly_1086.jpg inflating: bears/training/grizzly/grizzly_1092.jpg inflating: bears/training/grizzly/grizzly_1087.jpg inflating: bears/training/grizzly/grizzly_1044.jpg inflating: bears/training/grizzly/grizzly_1078.jpg inflating: bears/training/grizzly/grizzly_1252.jpg inflating: bears/training/grizzly/grizzly_1246.jpg inflating: bears/training/grizzly/grizzly_1326.jpg inflating: bears/training/grizzly/grizzly_1332.png inflating: bears/training/grizzly/grizzly_1130.jpg inflating: bears/training/grizzly/grizzly_1118.jpg inflating: bears/training/grizzly/grizzly_1134.jpg inflating: bears/training/grizzly/grizzly_1120.jpg inflating: bears/training/grizzly/grizzly_1108.jpg inflating: bears/training/grizzly/grizzly_1242.jpg inflating: bears/training/grizzly/grizzly_1295.jpg inflating: bears/training/grizzly/grizzly_1040.jpg inflating: bears/training/grizzly/grizzly_1083.jpg inflating: bears/training/grizzly/grizzly_1082.jpg inflating: bears/training/grizzly/grizzly_1069.jpg inflating: bears/training/grizzly/grizzly_1041.jpg inflating: bears/training/grizzly/grizzly_1280.jpg inflating: bears/training/grizzly/grizzly_1257.jpg inflating: bears/training/grizzly/grizzly_1323.jpg inflating: bears/training/grizzly/grizzly_1337.jpg inflating: bears/training/grizzly/grizzly_1109.jpg inflating: bears/training/grizzly/grizzly_1135.jpg inflating: bears/training/grizzly/grizzly_1123.jpg inflating: bears/training/grizzly/grizzly_1321.jpg inflating: bears/training/grizzly/grizzly_1335.jpg inflating: bears/training/grizzly/grizzly_1309.jpg inflating: bears/training/grizzly/grizzly_1255.jpg inflating: bears/training/grizzly/grizzly_1269.jpg inflating: bears/training/grizzly/grizzly_1057.jpg inflating: bears/training/grizzly/grizzly_1094.jpg inflating: bears/training/grizzly/grizzly_1081.jpg inflating: bears/training/grizzly/grizzly_1095.jpg inflating: bears/training/grizzly/grizzly_1042.jpg inflating: bears/training/grizzly/grizzly_1283.jpg inflating: bears/training/grizzly/grizzly_1268.jpg inflating: bears/training/grizzly/grizzly_1240.jpg inflating: bears/training/grizzly/grizzly_1254.jpg inflating: bears/training/grizzly/grizzly_1308.jpg inflating: bears/training/grizzly/grizzly_1122.jpg inflating: bears/training/grizzly/grizzly_1145.jpg inflating: bears/training/grizzly/grizzly_1192.jpg inflating: bears/training/grizzly/grizzly_1390.jpg inflating: bears/training/grizzly/grizzly_1227.jpg inflating: bears/training/grizzly/grizzly_1019.jpg inflating: bears/training/grizzly/grizzly_1031.jpg inflating: bears/training/grizzly/grizzly_1025.jpg inflating: bears/training/grizzly/grizzly_1226.jpg inflating: bears/training/grizzly/grizzly_1232.jpg inflating: bears/training/grizzly/grizzly_1352.jpg inflating: bears/training/grizzly/grizzly_1346.jpg inflating: bears/training/grizzly/grizzly_1187.jpg inflating: bears/training/grizzly/grizzly_1150.jpg inflating: bears/training/grizzly/grizzly_1144.jpg inflating: bears/training/grizzly/grizzly_1178.jpg inflating: bears/training/grizzly/grizzly_1191.jpg inflating: bears/training/grizzly/grizzly_1185.jpg inflating: bears/training/grizzly/grizzly_1378.jpg inflating: bears/training/grizzly/grizzly_1218.jpg inflating: bears/training/grizzly/grizzly_1224.jpg inflating: bears/training/grizzly/grizzly_1032.jpg inflating: bears/training/grizzly/grizzly_1027.jpg inflating: bears/training/grizzly/grizzly_1392.jpg inflating: bears/training/grizzly/grizzly_1351.jpg inflating: bears/training/grizzly/grizzly_1379.jpg inflating: bears/training/grizzly/grizzly_1190.jpg inflating: bears/training/grizzly/grizzly_1147.jpg inflating: bears/training/grizzly/grizzly_1153.jpg inflating: bears/training/grizzly/grizzly_1157.jpg inflating: bears/training/grizzly/grizzly_1143.jpg inflating: bears/training/grizzly/grizzly_1194.jpg inflating: bears/training/grizzly/grizzly_1180.jpg inflating: bears/training/grizzly/grizzly_1355.jpg inflating: bears/training/grizzly/grizzly_1221.jpg inflating: bears/training/grizzly/grizzly_1235.jpg inflating: bears/training/grizzly/grizzly_1209.jpg inflating: bears/training/grizzly/grizzly_1036.jpg inflating: bears/training/grizzly/grizzly_1208.jpg inflating: bears/training/grizzly/grizzly_1234.jpg inflating: bears/training/grizzly/grizzly_1220.jpg inflating: bears/training/grizzly/grizzly_1397.jpg inflating: bears/training/grizzly/grizzly_1354.jpg inflating: bears/training/grizzly/grizzly_1340.png inflating: bears/training/grizzly/grizzly_1195.jpg inflating: bears/training/grizzly/grizzly_1142.jpg inflating: bears/training/grizzly/grizzly_1156.jpg inflating: bears/training/grizzly/grizzly_1140.jpg inflating: bears/training/grizzly/grizzly_1183.jpg inflating: bears/training/grizzly/grizzly_1395.jpg inflating: bears/training/grizzly/grizzly_1020.jpg inflating: bears/training/grizzly/grizzly_1021.jpg inflating: bears/training/grizzly/grizzly_1035.jpg inflating: bears/training/grizzly/grizzly_1223.jpg inflating: bears/training/grizzly/grizzly_1237.jpg inflating: bears/training/grizzly/grizzly_1394.jpg inflating: bears/training/grizzly/grizzly_1380.jpg inflating: bears/training/grizzly/grizzly_1357.jpg inflating: bears/training/grizzly/grizzly_1343.jpg inflating: bears/training/grizzly/grizzly_1196.jpg inflating: bears/training/grizzly/grizzly_1182.jpg inflating: bears/training/grizzly/grizzly_1169.jpg inflating: bears/training/grizzly/grizzly_1141.jpg inflating: bears/training/grizzly/grizzly_1164.jpg inflating: bears/training/grizzly/grizzly_1170.jpg inflating: bears/training/grizzly/grizzly_1366.jpg inflating: bears/training/grizzly/grizzly_1212.jpg inflating: bears/training/grizzly/grizzly_1206.jpg inflating: bears/training/grizzly/grizzly_1010.jpg inflating: bears/training/grizzly/grizzly_1011.jpg inflating: bears/training/grizzly/grizzly_1039.jpg inflating: bears/training/grizzly/grizzly_1207.jpg inflating: bears/training/grizzly/grizzly_1367.jpg inflating: bears/training/grizzly/grizzly_1171.jpg inflating: bears/training/grizzly/grizzly_1159.jpg inflating: bears/training/grizzly/grizzly_1167.jpg inflating: bears/training/grizzly/grizzly_1359.jpg inflating: bears/training/grizzly/grizzly_1371.jpg inflating: bears/training/grizzly/grizzly_1205.jpg inflating: bears/training/grizzly/grizzly_1211.jpg inflating: bears/training/grizzly/grizzly_1007.jpg inflating: bears/training/grizzly/grizzly_1013.jpg inflating: bears/training/grizzly/grizzly_1012.jpg inflating: bears/training/grizzly/grizzly_1006.jpg inflating: bears/training/grizzly/grizzly_1210.jpg inflating: bears/training/grizzly/grizzly_1204.jpg inflating: bears/training/grizzly/grizzly_1238.jpg inflating: bears/training/grizzly/grizzly_1358.jpg inflating: bears/training/grizzly/grizzly_1166.jpg inflating: bears/training/grizzly/grizzly_1172.jpg inflating: bears/training/grizzly/grizzly_1176.jpg inflating: bears/training/grizzly/grizzly_1360.jpg inflating: bears/training/grizzly/grizzly_1348.jpg inflating: bears/training/grizzly/grizzly_1228.jpg inflating: bears/training/grizzly/grizzly_1017.jpg inflating: bears/training/grizzly/grizzly_1229.jpg inflating: bears/training/grizzly/grizzly_1215.jpg inflating: bears/training/grizzly/grizzly_1349.jpg inflating: bears/training/grizzly/grizzly_1361.jpg inflating: bears/training/grizzly/grizzly_1375.jpg inflating: bears/training/grizzly/grizzly_1177.jpg inflating: bears/training/grizzly/grizzly_1175.jpg inflating: bears/training/grizzly/grizzly_1149.jpg inflating: bears/training/grizzly/grizzly_1363.jpg inflating: bears/training/grizzly/grizzly_1388.jpg inflating: bears/training/grizzly/grizzly_1217.jpg inflating: bears/training/grizzly/grizzly_1015.jpg inflating: bears/training/grizzly/grizzly_1001.jpg inflating: bears/training/grizzly/grizzly_1029.jpg inflating: bears/training/grizzly/grizzly_1028.jpg inflating: bears/training/grizzly/grizzly_1014.jpg inflating: bears/training/grizzly/grizzly_1202.jpg inflating: bears/training/grizzly/grizzly_1216.jpg inflating: bears/training/grizzly/grizzly_1362.jpg inflating: bears/training/grizzly/grizzly_1148.jpg inflating: bears/training/grizzly/grizzly_1160.jpg inflating: bears/training/grizzly/grizzly_1107.jpg inflating: bears/training/grizzly/grizzly_1339.png inflating: bears/training/grizzly/grizzly_1271.jpg inflating: bears/training/grizzly/grizzly_1265.jpg inflating: bears/training/grizzly/grizzly_1073.jpg inflating: bears/training/grizzly/grizzly_1067.jpg inflating: bears/training/grizzly/grizzly_1098.jpg inflating: bears/training/grizzly/grizzly_1099.jpg inflating: bears/training/grizzly/grizzly_1066.jpg inflating: bears/training/grizzly/grizzly_1264.jpg inflating: bears/training/grizzly/grizzly_1258.jpg inflating: bears/training/grizzly/grizzly_1304.jpg inflating: bears/training/grizzly/grizzly_1138.jpg inflating: bears/training/grizzly/grizzly_1104.jpg inflating: bears/training/grizzly/grizzly_1312.jpg inflating: bears/training/grizzly/grizzly_1272.jpg inflating: bears/training/grizzly/grizzly_1299.jpg inflating: bears/training/grizzly/grizzly_1071.jpg inflating: bears/training/grizzly/grizzly_1065.jpg inflating: bears/training/grizzly/grizzly_1059.jpg inflating: bears/training/grizzly/grizzly_1273.jpg inflating: bears/training/grizzly/grizzly_1267.jpg inflating: bears/training/grizzly/grizzly_1313.jpg inflating: bears/training/grizzly/grizzly_1111.jpg inflating: bears/training/grizzly/grizzly_1139.jpg inflating: bears/training/grizzly/grizzly_1115.jpg inflating: bears/training/grizzly/grizzly_1101.jpg inflating: bears/training/grizzly/grizzly_1129.jpg inflating: bears/training/grizzly/grizzly_1303.jpg inflating: bears/training/grizzly/grizzly_1277.jpg inflating: bears/training/grizzly/grizzly_1061.jpg inflating: bears/training/grizzly/grizzly_1075.jpg inflating: bears/training/grizzly/grizzly_1048.jpg inflating: bears/training/grizzly/grizzly_1289.jpg inflating: bears/training/grizzly/grizzly_1262.jpg inflating: bears/training/grizzly/grizzly_1302.jpg inflating: bears/training/grizzly/grizzly_1128.jpg inflating: bears/training/grizzly/grizzly_1100.jpg inflating: bears/training/grizzly/grizzly_1102.jpg inflating: bears/training/grizzly/grizzly_1300.jpg inflating: bears/training/grizzly/grizzly_1314.jpg inflating: bears/training/grizzly/grizzly_1328.jpg inflating: bears/training/grizzly/grizzly_1274.jpg inflating: bears/training/grizzly/grizzly_1248.jpg inflating: bears/training/grizzly/grizzly_1062.jpg inflating: bears/training/grizzly/grizzly_1088.jpg inflating: bears/training/grizzly/grizzly_1249.jpg inflating: bears/training/grizzly/grizzly_1261.jpg inflating: bears/training/grizzly/grizzly_1315.jpg inflating: bears/training/grizzly/grizzly_1301.jpg inflating: bears/training/grizzly/grizzly_1117.jpg inflating: bears/validation/polar/polar_1365.png inflating: bears/validation/polar/polar_1211.jpg inflating: bears/validation/polar/polar_1204.jpg inflating: bears/validation/polar/polar_1164.jpg inflating: bears/validation/polar/polar_1170.jpg inflating: bears/validation/polar/polar_1212.jpg inflating: bears/validation/polar/polar_1206.jpg inflating: bears/validation/polar/polar_1159.jpg inflating: bears/validation/polar/polar_1161.jpg inflating: bears/validation/polar/polar_1149.jpg inflating: bears/validation/polar/polar_1388.jpg inflating: bears/validation/polar/polar_1028.jpg inflating: bears/validation/polar/polar_1376.jpg inflating: bears/validation/polar/polar_1160.jpg inflating: bears/validation/polar/polar_1017.jpg inflating: bears/validation/polar/polar_1110.jpg inflating: bears/validation/polar/polar_1104.jpg inflating: bears/validation/polar/polar_1307.jpg inflating: bears/validation/polar/polar_1305.jpg inflating: bears/validation/polar/polar_1116.jpg inflating: bears/validation/polar/polar_1328.jpg inflating: bears/validation/polar/polar_1274.jpg inflating: bears/validation/polar/polar_1260.jpg inflating: bears/validation/polar/polar_1248.jpg inflating: bears/validation/polar/polar_1129.jpg inflating: bears/validation/polar/polar_1263.jpg inflating: bears/validation/polar/polar_1049.jpg inflating: bears/validation/polar/polar_1262.jpg inflating: bears/validation/polar/polar_1100.jpg inflating: bears/validation/polar/polar_1253.jpg inflating: bears/validation/polar/polar_1079.jpg inflating: bears/validation/polar/polar_1093.jpg inflating: bears/validation/polar/polar_1326.jpg inflating: bears/validation/polar/polar_1118.jpg inflating: bears/validation/polar/polar_1330.jpg inflating: bears/validation/polar/polar_1085.jpg inflating: bears/validation/polar/polar_1047.jpg inflating: bears/validation/polar/polar_1084.jpg inflating: bears/validation/polar/polar_1282.jpg inflating: bears/validation/polar/polar_1094.jpg inflating: bears/validation/polar/polar_1320.jpg inflating: bears/validation/polar/polar_1295.jpg inflating: bears/validation/polar/polar_1242.jpg inflating: bears/validation/polar/polar_1055.jpg inflating: bears/validation/polar/polar_1109.jpg inflating: bears/validation/polar/polar_1191.jpg inflating: bears/validation/polar/polar_1185.jpg inflating: bears/validation/polar/polar_1230.jpg inflating: bears/validation/polar/polar_1032.jpg inflating: bears/validation/polar/polar_1231.jpg inflating: bears/validation/polar/polar_1351.jpg inflating: bears/validation/polar/polar_1147.jpg inflating: bears/validation/polar/polar_1184.jpg inflating: bears/validation/polar/polar_1186.jpg inflating: bears/validation/polar/polar_1151.jpg inflating: bears/validation/polar/polar_1384.jpg inflating: bears/validation/polar/polar_1353.jpg inflating: bears/validation/polar/polar_1031.jpg inflating: bears/validation/polar/polar_1025.jpg inflating: bears/validation/polar/polar_1030.jpg inflating: bears/validation/polar/polar_1385.jpg inflating: bears/validation/polar/polar_1144.jpg inflating: bears/validation/polar/polar_1178.jpg inflating: bears/validation/polar/polar_1183.jpg inflating: bears/validation/polar/polar_1197.jpg inflating: bears/validation/polar/polar_1168.jpg inflating: bears/validation/polar/polar_1395.jpg inflating: bears/validation/polar/polar_1222.jpg inflating: bears/validation/polar/polar_1394.jpg inflating: bears/validation/polar/polar_1380.jpg inflating: bears/validation/polar/polar_1169.jpg inflating: bears/validation/polar/polar_1396.jpg inflating: bears/validation/polar/polar_1023.jpg inflating: bears/validation/polar/polar_1340.jpg inflating: bears/validation/panda/panda_1205.jpg inflating: bears/validation/panda/panda_1370.jpg inflating: bears/validation/panda/panda_1158.jpg inflating: bears/validation/panda/panda_1004.jpg inflating: bears/validation/panda/panda_1207.jpg inflating: bears/validation/panda/panda_1161.jpg inflating: bears/validation/panda/panda_1149.jpg inflating: bears/validation/panda/panda_1388.jpg inflating: bears/validation/panda/panda_1015.jpg inflating: bears/validation/panda/panda_1028.jpg inflating: bears/validation/panda/panda_1148.jpg inflating: bears/validation/panda/panda_1162.jpg inflating: bears/validation/panda/panda_1360.jpg inflating: bears/validation/panda/panda_1348.jpg inflating: bears/validation/panda/panda_1003.jpg inflating: bears/validation/panda/panda_1215.jpg inflating: bears/validation/panda/panda_1339.jpg inflating: bears/validation/panda/panda_1073.jpg inflating: bears/validation/panda/panda_1304.jpg inflating: bears/validation/panda/panda_1112.jpg inflating: bears/validation/panda/panda_1102.jpg inflating: bears/validation/panda/panda_1328.jpg inflating: bears/validation/panda/panda_1089.jpg inflating: bears/validation/panda/panda_1077.jpg inflating: bears/validation/panda/panda_1275.jpg inflating: bears/validation/panda/panda_1329.jpg inflating: bears/validation/panda/panda_1315.png inflating: bears/validation/panda/panda_1048.jpg inflating: bears/validation/panda/panda_1302.jpg inflating: bears/validation/panda/panda_1131.jpg inflating: bears/validation/panda/panda_1333.jpg inflating: bears/validation/panda/panda_1253.jpg inflating: bears/validation/panda/panda_1247.jpg inflating: bears/validation/panda/panda_1290.jpg inflating: bears/validation/panda/panda_1092.jpg inflating: bears/validation/panda/panda_1087.jpg inflating: bears/validation/panda/panda_1126.jpg inflating: bears/validation/panda/panda_1324.jpg inflating: bears/validation/panda/panda_1278.jpg inflating: bears/validation/panda/panda_1052.jpg inflating: bears/validation/panda/panda_1084.jpg inflating: bears/validation/panda/panda_1319.jpg inflating: bears/validation/panda/panda_1133.jpg inflating: bears/validation/panda/panda_1123.jpg inflating: bears/validation/panda/panda_1043.jpg inflating: bears/validation/panda/panda_1080.jpg inflating: bears/validation/panda/panda_1081.jpg inflating: bears/validation/panda/panda_1042.jpg inflating: bears/validation/panda/panda_1283.jpg inflating: bears/validation/panda/panda_1268.jpg inflating: bears/validation/panda/panda_1240.jpg inflating: bears/validation/panda/panda_1336.jpg inflating: bears/validation/panda/panda_1281.jpg inflating: bears/validation/panda/panda_1054.jpg inflating: bears/validation/panda/panda_1082.jpg inflating: bears/validation/panda/panda_1294.jpg inflating: bears/validation/panda/panda_1109.jpg inflating: bears/validation/panda/panda_1146.jpg inflating: bears/validation/panda/panda_1152.jpg inflating: bears/validation/panda/panda_1191.jpg inflating: bears/validation/panda/panda_1387.jpg inflating: bears/validation/panda/panda_1393.jpg inflating: bears/validation/panda/panda_1033.jpg inflating: bears/validation/panda/panda_1392.jpg inflating: bears/validation/panda/panda_1190.jpg inflating: bears/validation/panda/panda_1184.jpg inflating: bears/validation/panda/panda_1153.jpg inflating: bears/validation/panda/panda_1151.jpg inflating: bears/validation/panda/panda_1353.jpg inflating: bears/validation/panda/panda_1179.png inflating: bears/validation/panda/panda_1384.jpg inflating: bears/validation/panda/panda_1030.jpg inflating: bears/validation/panda/panda_1144.jpg inflating: bears/validation/panda/panda_1168.jpg inflating: bears/validation/panda/panda_1009.jpg inflating: bears/validation/panda/panda_1155.jpg inflating: bears/validation/panda/panda_1180.jpg inflating: bears/validation/panda/panda_1355.jpg inflating: bears/validation/panda/panda_1383.jpg inflating: bears/validation/panda/panda_1195.jpg inflating: bears/validation/grizzly/grizzly_1292.jpg inflating: bears/validation/grizzly/grizzly_1253.jpg inflating: bears/validation/grizzly/grizzly_1079.jpg inflating: bears/validation/grizzly/grizzly_1093.jpg inflating: bears/validation/grizzly/grizzly_1291.jpg inflating: bears/validation/grizzly/grizzly_1124.jpg inflating: bears/validation/grizzly/grizzly_1336.png inflating: bears/validation/grizzly/grizzly_1281.jpg inflating: bears/validation/grizzly/grizzly_1068.jpg inflating: bears/validation/grizzly/grizzly_1097.jpg inflating: bears/validation/grizzly/grizzly_1294.jpg inflating: bears/validation/grizzly/grizzly_1243.jpg inflating: bears/validation/grizzly/grizzly_1121.jpg inflating: bears/validation/grizzly/grizzly_1137.jpg inflating: bears/validation/grizzly/grizzly_1241.jpg inflating: bears/validation/grizzly/grizzly_1282.jpg inflating: bears/validation/grizzly/grizzly_1043.jpg inflating: bears/validation/grizzly/grizzly_1056.jpg inflating: bears/validation/grizzly/grizzly_1297.jpg inflating: bears/validation/grizzly/grizzly_1334.jpg inflating: bears/validation/grizzly/grizzly_1320.jpg inflating: bears/validation/grizzly/grizzly_1136.jpg inflating: bears/validation/grizzly/grizzly_1179.jpg inflating: bears/validation/grizzly/grizzly_1186.jpg inflating: bears/validation/grizzly/grizzly_1347.jpg inflating: bears/validation/grizzly/grizzly_1018.jpg inflating: bears/validation/grizzly/grizzly_1385.jpg inflating: bears/validation/grizzly/grizzly_1146.jpg inflating: bears/validation/grizzly/grizzly_1344.jpg inflating: bears/validation/grizzly/grizzly_1387.jpg inflating: bears/validation/grizzly/grizzly_1026.jpg inflating: bears/validation/grizzly/grizzly_1033.jpg inflating: bears/validation/grizzly/grizzly_1231.jpg inflating: bears/validation/grizzly/grizzly_1386.jpg inflating: bears/validation/grizzly/grizzly_1184.jpg inflating: bears/validation/grizzly/grizzly_1341.png inflating: bears/validation/grizzly/grizzly_1022.jpg inflating: bears/validation/grizzly/grizzly_1368.jpg inflating: bears/validation/grizzly/grizzly_1197.jpg inflating: bears/validation/grizzly/grizzly_1342.jpg inflating: bears/validation/grizzly/grizzly_1356.jpg inflating: bears/validation/grizzly/grizzly_1381.jpg inflating: bears/validation/grizzly/grizzly_1222.jpg inflating: bears/validation/grizzly/grizzly_1034.jpg inflating: bears/validation/grizzly/grizzly_1009.jpg inflating: bears/validation/grizzly/grizzly_1155.jpg inflating: bears/validation/grizzly/grizzly_1165.jpg inflating: bears/validation/grizzly/grizzly_1239.jpg inflating: bears/validation/grizzly/grizzly_1364.jpg inflating: bears/validation/grizzly/grizzly_1370.jpg inflating: bears/validation/grizzly/grizzly_1189.jpg inflating: bears/validation/grizzly/grizzly_1374.jpg inflating: bears/validation/grizzly/grizzly_1214.jpg inflating: bears/validation/grizzly/grizzly_1002.jpg inflating: bears/validation/grizzly/grizzly_1016.jpg inflating: bears/validation/grizzly/grizzly_1201.jpg inflating: bears/validation/grizzly/grizzly_1203.jpg inflating: bears/validation/grizzly/grizzly_1389.jpg inflating: bears/validation/grizzly/grizzly_1376.jpg inflating: bears/validation/grizzly/grizzly_1174.jpg inflating: bears/validation/grizzly/grizzly_1113.jpg inflating: bears/validation/grizzly/grizzly_1305.jpg inflating: bears/validation/grizzly/grizzly_1072.jpg inflating: bears/validation/grizzly/grizzly_1270.jpg inflating: bears/validation/grizzly/grizzly_1338.jpg inflating: bears/validation/grizzly/grizzly_1112.jpg inflating: bears/validation/grizzly/grizzly_1106.jpg inflating: bears/validation/grizzly/grizzly_1110.jpg inflating: bears/validation/grizzly/grizzly_1266.jpg inflating: bears/validation/grizzly/grizzly_1058.jpg inflating: bears/validation/grizzly/grizzly_1064.jpg inflating: bears/validation/grizzly/grizzly_1070.jpg inflating: bears/validation/grizzly/grizzly_1298.jpg inflating: bears/validation/grizzly/grizzly_1263.jpg inflating: bears/validation/grizzly/grizzly_1288.jpg inflating: bears/validation/grizzly/grizzly_1049.jpg inflating: bears/validation/grizzly/grizzly_1074.jpg inflating: bears/validation/grizzly/grizzly_1276.jpg inflating: bears/validation/grizzly/grizzly_1316.jpg inflating: bears/validation/grizzly/grizzly_1116.jpg inflating: bears/validation/grizzly/grizzly_1260.jpg inflating: bears/validation/grizzly/grizzly_1089.jpg inflating: bears/validation/grizzly/grizzly_1063.jpg inflating: bears/validation/grizzly/grizzly_1077.jpg inflating: bears/validation/grizzly/grizzly_1275.jpg inflating: bears/validation/grizzly/grizzly_1329.jpg
Create 3 seperate data generators for training, validation, and testing
datagen = ImageDataGenerator(
rescale=1./255)
train_ds = datagen.flow_from_directory(
'./bears/training/',
target_size=(48, 48),
shuffle=True,
batch_size=32)
valid_ds = datagen.flow_from_directory(
'./bears/validation/',
target_size=(48, 48),
shuffle=True,
batch_size=32)
test_ds = datagen.flow_from_directory(
'./bears/test/',
target_size=(48, 48),
shuffle=True,
batch_size=32
)
Found 718 images belonging to 3 classes. Found 240 images belonging to 3 classes. Found 240 images belonging to 3 classes.
Model for the Split Data
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten
from tensorflow.keras import datasets, layers, models
model3 = models.Sequential()
model3.add(layers.Conv2D( 64, ( 3, 3 ), activation = 'relu',
input_shape = (48, 48, 3) ) )
model3.add(layers.MaxPooling2D(4, 4) )
model3.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu' ) )
model3.add(layers.MaxPooling2D(2, 2) )
model3.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu' ) )
model3.add( Flatten() )
model3.add( Dense( 32, activation = 'relu' ) )
model3.add( Dense( 3, activation = 'softmax' ) )
Model Summary
model3.summary()
Model: "sequential_3"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_9 (Conv2D) (None, 46, 46, 64) 1792
max_pooling2d_6 (MaxPooling (None, 11, 11, 64) 0
2D)
conv2d_10 (Conv2D) (None, 9, 9, 32) 18464
max_pooling2d_7 (MaxPooling (None, 4, 4, 32) 0
2D)
conv2d_11 (Conv2D) (None, 2, 2, 32) 9248
flatten_3 (Flatten) (None, 128) 0
dense_6 (Dense) (None, 32) 4128
dense_7 (Dense) (None, 3) 99
=================================================================
Total params: 33,731
Trainable params: 33,731
Non-trainable params: 0
_________________________________________________________________
Compile the model
model3.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])
Train the model on split data
history3 = model3.fit(train_ds, epochs=40, validation_data=valid_ds, batch_size=32, callbacks = [callback])
Epoch 1/40 23/23 [==============================] - 8s 243ms/step - loss: 1.0146 - accuracy: 0.4833 - precision_4: 0.7172 - recall_4: 0.0989 - val_loss: 0.8732 - val_accuracy: 0.5667 - val_precision_4: 0.6641 - val_recall_4: 0.3542 Epoch 2/40 23/23 [==============================] - 6s 268ms/step - loss: 0.7322 - accuracy: 0.6212 - precision_4: 0.7300 - recall_4: 0.4708 - val_loss: 0.7777 - val_accuracy: 0.5875 - val_precision_4: 0.6453 - val_recall_4: 0.5458 Epoch 3/40 23/23 [==============================] - 5s 222ms/step - loss: 0.6538 - accuracy: 0.6685 - precision_4: 0.7083 - recall_4: 0.6086 - val_loss: 0.6825 - val_accuracy: 0.6458 - val_precision_4: 0.6713 - val_recall_4: 0.6042 Epoch 4/40 23/23 [==============================] - 6s 271ms/step - loss: 0.5530 - accuracy: 0.7730 - precision_4: 0.8016 - recall_4: 0.7089 - val_loss: 0.5958 - val_accuracy: 0.7375 - val_precision_4: 0.7671 - val_recall_4: 0.7000 Epoch 5/40 23/23 [==============================] - 5s 231ms/step - loss: 0.4983 - accuracy: 0.8036 - precision_4: 0.8291 - recall_4: 0.7702 - val_loss: 0.5838 - val_accuracy: 0.7750 - val_precision_4: 0.7897 - val_recall_4: 0.7042 Epoch 6/40 23/23 [==============================] - 6s 283ms/step - loss: 0.4477 - accuracy: 0.8259 - precision_4: 0.8421 - recall_4: 0.8022 - val_loss: 0.5020 - val_accuracy: 0.7875 - val_precision_4: 0.8117 - val_recall_4: 0.7542 Epoch 7/40 23/23 [==============================] - 5s 231ms/step - loss: 0.4298 - accuracy: 0.8175 - precision_4: 0.8288 - recall_4: 0.8022 - val_loss: 0.6005 - val_accuracy: 0.7458 - val_precision_4: 0.7564 - val_recall_4: 0.7375 Epoch 8/40 23/23 [==============================] - 6s 280ms/step - loss: 0.3757 - accuracy: 0.8621 - precision_4: 0.8702 - recall_4: 0.8496 - val_loss: 0.4541 - val_accuracy: 0.8333 - val_precision_4: 0.8383 - val_recall_4: 0.8208 Epoch 9/40 23/23 [==============================] - 5s 226ms/step - loss: 0.3433 - accuracy: 0.8760 - precision_4: 0.8902 - recall_4: 0.8579 - val_loss: 0.4570 - val_accuracy: 0.8375 - val_precision_4: 0.8578 - val_recall_4: 0.8042 Epoch 10/40 23/23 [==============================] - 6s 254ms/step - loss: 0.3111 - accuracy: 0.8928 - precision_4: 0.9022 - recall_4: 0.8733 - val_loss: 0.4111 - val_accuracy: 0.8750 - val_precision_4: 0.8836 - val_recall_4: 0.8542 Epoch 11/40 23/23 [==============================] - 5s 225ms/step - loss: 0.2651 - accuracy: 0.8969 - precision_4: 0.9109 - recall_4: 0.8830 - val_loss: 0.4168 - val_accuracy: 0.8583 - val_precision_4: 0.8644 - val_recall_4: 0.8500 Epoch 12/40 23/23 [==============================] - 5s 228ms/step - loss: 0.2484 - accuracy: 0.9025 - precision_4: 0.9134 - recall_4: 0.8955 - val_loss: 0.3969 - val_accuracy: 0.8625 - val_precision_4: 0.8836 - val_recall_4: 0.8542 Epoch 13/40 23/23 [==============================] - 6s 267ms/step - loss: 0.2377 - accuracy: 0.9067 - precision_4: 0.9147 - recall_4: 0.8955 - val_loss: 0.3975 - val_accuracy: 0.8708 - val_precision_4: 0.8718 - val_recall_4: 0.8500 Epoch 14/40 23/23 [==============================] - 6s 243ms/step - loss: 0.2454 - accuracy: 0.8942 - precision_4: 0.9060 - recall_4: 0.8858 - val_loss: 0.4015 - val_accuracy: 0.8750 - val_precision_4: 0.8739 - val_recall_4: 0.8667 Epoch 15/40 23/23 [==============================] - 6s 268ms/step - loss: 0.2436 - accuracy: 0.9095 - precision_4: 0.9283 - recall_4: 0.9011 - val_loss: 0.3570 - val_accuracy: 0.8958 - val_precision_4: 0.9056 - val_recall_4: 0.8792 Epoch 16/40 23/23 [==============================] - 5s 223ms/step - loss: 0.1964 - accuracy: 0.9248 - precision_4: 0.9347 - recall_4: 0.9164 - val_loss: 0.3623 - val_accuracy: 0.8875 - val_precision_4: 0.8898 - val_recall_4: 0.8750 Epoch 17/40 23/23 [==============================] - 5s 226ms/step - loss: 0.2059 - accuracy: 0.9109 - precision_4: 0.9247 - recall_4: 0.9067 - val_loss: 0.3856 - val_accuracy: 0.8625 - val_precision_4: 0.8613 - val_recall_4: 0.8542 Epoch 18/40 23/23 [==============================] - 6s 275ms/step - loss: 0.1817 - accuracy: 0.9345 - precision_4: 0.9460 - recall_4: 0.9276 - val_loss: 0.3490 - val_accuracy: 0.8958 - val_precision_4: 0.8987 - val_recall_4: 0.8875 Epoch 19/40 23/23 [==============================] - 5s 231ms/step - loss: 0.1581 - accuracy: 0.9457 - precision_4: 0.9519 - recall_4: 0.9373 - val_loss: 0.3479 - val_accuracy: 0.8958 - val_precision_4: 0.8974 - val_recall_4: 0.8750 Epoch 20/40 23/23 [==============================] - 6s 274ms/step - loss: 0.1735 - accuracy: 0.9415 - precision_4: 0.9451 - recall_4: 0.9359 - val_loss: 0.4464 - val_accuracy: 0.8375 - val_precision_4: 0.8621 - val_recall_4: 0.8333 Epoch 21/40 23/23 [==============================] - 6s 284ms/step - loss: 0.1774 - accuracy: 0.9345 - precision_4: 0.9383 - recall_4: 0.9318 - val_loss: 0.3589 - val_accuracy: 0.8958 - val_precision_4: 0.9068 - val_recall_4: 0.8917 Epoch 22/40 23/23 [==============================] - 5s 232ms/step - loss: 0.1423 - accuracy: 0.9596 - precision_4: 0.9675 - recall_4: 0.9526 - val_loss: 0.3791 - val_accuracy: 0.8833 - val_precision_4: 0.8870 - val_recall_4: 0.8833 Epoch 23/40 23/23 [==============================] - 5s 223ms/step - loss: 0.1158 - accuracy: 0.9624 - precision_4: 0.9650 - recall_4: 0.9596 - val_loss: 0.3681 - val_accuracy: 0.8917 - val_precision_4: 0.8917 - val_recall_4: 0.8917 Epoch 24/40 23/23 [==============================] - 6s 265ms/step - loss: 0.1361 - accuracy: 0.9554 - precision_4: 0.9621 - recall_4: 0.9540 - val_loss: 0.5103 - val_accuracy: 0.8500 - val_precision_4: 0.8536 - val_recall_4: 0.8500 Epoch 25/40 23/23 [==============================] - 5s 221ms/step - loss: 0.1259 - accuracy: 0.9582 - precision_4: 0.9622 - recall_4: 0.9582 - val_loss: 0.3833 - val_accuracy: 0.8958 - val_precision_4: 0.8996 - val_recall_4: 0.8958 Epoch 26/40 23/23 [==============================] - 6s 264ms/step - loss: 0.0932 - accuracy: 0.9708 - precision_4: 0.9748 - recall_4: 0.9694 - val_loss: 0.3707 - val_accuracy: 0.8958 - val_precision_4: 0.9034 - val_recall_4: 0.8958 Epoch 27/40 23/23 [==============================] - 5s 221ms/step - loss: 0.0979 - accuracy: 0.9666 - precision_4: 0.9677 - recall_4: 0.9610 - val_loss: 0.4536 - val_accuracy: 0.8625 - val_precision_4: 0.8619 - val_recall_4: 0.8583 Epoch 28/40 23/23 [==============================] - 6s 265ms/step - loss: 0.0966 - accuracy: 0.9652 - precision_4: 0.9691 - recall_4: 0.9624 - val_loss: 0.4156 - val_accuracy: 0.8750 - val_precision_4: 0.8739 - val_recall_4: 0.8667 Epoch 29/40 23/23 [==============================] - 5s 221ms/step - loss: 0.0879 - accuracy: 0.9694 - precision_4: 0.9720 - recall_4: 0.9666 - val_loss: 0.3641 - val_accuracy: 0.9042 - val_precision_4: 0.9114 - val_recall_4: 0.9000 Epoch 30/40 23/23 [==============================] - 6s 268ms/step - loss: 0.0654 - accuracy: 0.9805 - precision_4: 0.9818 - recall_4: 0.9777 - val_loss: 0.3824 - val_accuracy: 0.8917 - val_precision_4: 0.8912 - val_recall_4: 0.8875 Epoch 31/40 23/23 [==============================] - 6s 256ms/step - loss: 0.0604 - accuracy: 0.9819 - precision_4: 0.9832 - recall_4: 0.9805 - val_loss: 0.3909 - val_accuracy: 0.8958 - val_precision_4: 0.8996 - val_recall_4: 0.8958 Epoch 32/40 23/23 [==============================] - 5s 222ms/step - loss: 0.0554 - accuracy: 0.9916 - precision_4: 0.9930 - recall_4: 0.9903 - val_loss: 0.4059 - val_accuracy: 0.9000 - val_precision_4: 0.8996 - val_recall_4: 0.8958 Epoch 33/40 23/23 [==============================] - 6s 273ms/step - loss: 0.0635 - accuracy: 0.9819 - precision_4: 0.9818 - recall_4: 0.9777 - val_loss: 0.4385 - val_accuracy: 0.8917 - val_precision_4: 0.8908 - val_recall_4: 0.8833 Epoch 34/40 23/23 [==============================] - 5s 224ms/step - loss: 0.0674 - accuracy: 0.9749 - precision_4: 0.9749 - recall_4: 0.9735 - val_loss: 0.3880 - val_accuracy: 0.9000 - val_precision_4: 0.9114 - val_recall_4: 0.9000 Epoch 35/40 23/23 [==============================] - 5s 229ms/step - loss: 0.0417 - accuracy: 0.9916 - precision_4: 0.9916 - recall_4: 0.9916 - val_loss: 0.4157 - val_accuracy: 0.8875 - val_precision_4: 0.8912 - val_recall_4: 0.8875 Epoch 36/40 23/23 [==============================] - 5s 224ms/step - loss: 0.0412 - accuracy: 0.9847 - precision_4: 0.9847 - recall_4: 0.9833 - val_loss: 0.4550 - val_accuracy: 0.8917 - val_precision_4: 0.8908 - val_recall_4: 0.8833 Epoch 37/40 23/23 [==============================] - 6s 245ms/step - loss: 0.0677 - accuracy: 0.9735 - precision_4: 0.9749 - recall_4: 0.9735 - val_loss: 0.4237 - val_accuracy: 0.8958 - val_precision_4: 0.9068 - val_recall_4: 0.8917 Epoch 38/40 23/23 [==============================] - 6s 249ms/step - loss: 0.0498 - accuracy: 0.9875 - precision_4: 0.9874 - recall_4: 0.9861 - val_loss: 0.4225 - val_accuracy: 0.9000 - val_precision_4: 0.9076 - val_recall_4: 0.9000 Epoch 39/40 23/23 [==============================] - 5s 226ms/step - loss: 0.0264 - accuracy: 0.9958 - precision_4: 0.9972 - recall_4: 0.9958 - val_loss: 0.4189 - val_accuracy: 0.9000 - val_precision_4: 0.9076 - val_recall_4: 0.9000 Epoch 40/40 23/23 [==============================] - 5s 225ms/step - loss: 0.0216 - accuracy: 0.9972 - precision_4: 0.9972 - recall_4: 0.9972 - val_loss: 0.4487 - val_accuracy: 0.9083 - val_precision_4: 0.9083 - val_recall_4: 0.9083
Learning curves
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history3.history['accuracy'])
plt.plot(history3.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history3.history['precision_4'])
plt.plot(history3.history['val_precision_4'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history3.history['recall_4'])
plt.plot(history3.history['val_recall_4'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model3.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 1s 156ms/step - loss: 0.4183 - accuracy: 0.8792 - precision_4: 0.8792 - recall_4: 0.8792 validation_acc: 87.92 validation_loss: 0.42 validation_precision: 0.88 validation_recall: 0.88
Decrease the parameters
#from tensorflow.keras.models import Sequential
#from tensorflow.keras.layers import Dense, Conv2D, Flatten
#from tensorflow.keras import datasets, layers, models
model4 = models.Sequential()
model4.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu',
input_shape = (48, 48, 3) ) )
model4.add(layers.MaxPooling2D(4, 4) )
model4.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model4.add(layers.MaxPooling2D(2, 2) )
model4.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model4.add( Flatten() )
model4.add( Dense( 32, activation = 'relu' ) )
model4.add( Dense( 3, activation = 'softmax' ) )
model4.summary()
Model: "sequential_4"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_12 (Conv2D) (None, 46, 46, 32) 896
max_pooling2d_8 (MaxPooling (None, 11, 11, 32) 0
2D)
conv2d_13 (Conv2D) (None, 9, 9, 16) 4624
max_pooling2d_9 (MaxPooling (None, 4, 4, 16) 0
2D)
conv2d_14 (Conv2D) (None, 2, 2, 8) 1160
flatten_4 (Flatten) (None, 32) 0
dense_8 (Dense) (None, 32) 1056
dense_9 (Dense) (None, 3) 99
=================================================================
Total params: 7,835
Trainable params: 7,835
Non-trainable params: 0
_________________________________________________________________
Compile the model
model4.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])
Train the model
history4 = model4.fit(train_ds, epochs=40, validation_data=valid_ds, batch_size=32, callbacks = [callback])
Epoch 1/40 23/23 [==============================] - 9s 291ms/step - loss: 1.0835 - accuracy: 0.3510 - precision_5: 0.0000e+00 - recall_5: 0.0000e+00 - val_loss: 1.0419 - val_accuracy: 0.4292 - val_precision_5: 0.0000e+00 - val_recall_5: 0.0000e+00 Epoch 2/40 23/23 [==============================] - 5s 227ms/step - loss: 0.9638 - accuracy: 0.5975 - precision_5: 0.8333 - recall_5: 0.0557 - val_loss: 0.8407 - val_accuracy: 0.6250 - val_precision_5: 0.7742 - val_recall_5: 0.4000 Epoch 3/40 23/23 [==============================] - 7s 303ms/step - loss: 0.7395 - accuracy: 0.6421 - precision_5: 0.7278 - recall_5: 0.5028 - val_loss: 0.6878 - val_accuracy: 0.6958 - val_precision_5: 0.7327 - val_recall_5: 0.6167 Epoch 4/40 23/23 [==============================] - 5s 231ms/step - loss: 0.6222 - accuracy: 0.7326 - precision_5: 0.7750 - recall_5: 0.6379 - val_loss: 0.6355 - val_accuracy: 0.6958 - val_precision_5: 0.7416 - val_recall_5: 0.6458 Epoch 5/40 23/23 [==============================] - 5s 228ms/step - loss: 0.5853 - accuracy: 0.7521 - precision_5: 0.7890 - recall_5: 0.6769 - val_loss: 0.6678 - val_accuracy: 0.7083 - val_precision_5: 0.7225 - val_recall_5: 0.6833 Epoch 6/40 23/23 [==============================] - 6s 283ms/step - loss: 0.5483 - accuracy: 0.7618 - precision_5: 0.7873 - recall_5: 0.7061 - val_loss: 0.5879 - val_accuracy: 0.7458 - val_precision_5: 0.7636 - val_recall_5: 0.7000 Epoch 7/40 23/23 [==============================] - 5s 227ms/step - loss: 0.4879 - accuracy: 0.8120 - precision_5: 0.8275 - recall_5: 0.7618 - val_loss: 0.5387 - val_accuracy: 0.7750 - val_precision_5: 0.7920 - val_recall_5: 0.7458 Epoch 8/40 23/23 [==============================] - 6s 269ms/step - loss: 0.4416 - accuracy: 0.8301 - precision_5: 0.8605 - recall_5: 0.8078 - val_loss: 0.5080 - val_accuracy: 0.8000 - val_precision_5: 0.8194 - val_recall_5: 0.7750 Epoch 9/40 23/23 [==============================] - 5s 227ms/step - loss: 0.4120 - accuracy: 0.8496 - precision_5: 0.8668 - recall_5: 0.8245 - val_loss: 0.6283 - val_accuracy: 0.7542 - val_precision_5: 0.7739 - val_recall_5: 0.7417 Epoch 10/40 23/23 [==============================] - 5s 224ms/step - loss: 0.4118 - accuracy: 0.8510 - precision_5: 0.8656 - recall_5: 0.8343 - val_loss: 0.4574 - val_accuracy: 0.8208 - val_precision_5: 0.8312 - val_recall_5: 0.8000 Epoch 11/40 23/23 [==============================] - 6s 266ms/step - loss: 0.3303 - accuracy: 0.9011 - precision_5: 0.9063 - recall_5: 0.8760 - val_loss: 0.4453 - val_accuracy: 0.8333 - val_precision_5: 0.8347 - val_recall_5: 0.8208 Epoch 12/40 23/23 [==============================] - 5s 229ms/step - loss: 0.3123 - accuracy: 0.8928 - precision_5: 0.9023 - recall_5: 0.8747 - val_loss: 0.4403 - val_accuracy: 0.8417 - val_precision_5: 0.8376 - val_recall_5: 0.8167 Epoch 13/40 23/23 [==============================] - 6s 250ms/step - loss: 0.3026 - accuracy: 0.8928 - precision_5: 0.9053 - recall_5: 0.8788 - val_loss: 0.4182 - val_accuracy: 0.8417 - val_precision_5: 0.8432 - val_recall_5: 0.8292 Epoch 14/40 23/23 [==============================] - 6s 270ms/step - loss: 0.2736 - accuracy: 0.9067 - precision_5: 0.9215 - recall_5: 0.8997 - val_loss: 0.4129 - val_accuracy: 0.8417 - val_precision_5: 0.8426 - val_recall_5: 0.8250 Epoch 15/40 23/23 [==============================] - 6s 272ms/step - loss: 0.2846 - accuracy: 0.8816 - precision_5: 0.8941 - recall_5: 0.8705 - val_loss: 0.4453 - val_accuracy: 0.8333 - val_precision_5: 0.8305 - val_recall_5: 0.8167 Epoch 16/40 23/23 [==============================] - 5s 229ms/step - loss: 0.2921 - accuracy: 0.8886 - precision_5: 0.8974 - recall_5: 0.8774 - val_loss: 0.4754 - val_accuracy: 0.8167 - val_precision_5: 0.8255 - val_recall_5: 0.8083 Epoch 17/40 23/23 [==============================] - 6s 251ms/step - loss: 0.2704 - accuracy: 0.8997 - precision_5: 0.9087 - recall_5: 0.8872 - val_loss: 0.4206 - val_accuracy: 0.8375 - val_precision_5: 0.8455 - val_recall_5: 0.8208 Epoch 18/40 23/23 [==============================] - 6s 270ms/step - loss: 0.2698 - accuracy: 0.8942 - precision_5: 0.9135 - recall_5: 0.8830 - val_loss: 0.4198 - val_accuracy: 0.8500 - val_precision_5: 0.8523 - val_recall_5: 0.8417 Epoch 19/40 23/23 [==============================] - 5s 231ms/step - loss: 0.2506 - accuracy: 0.9011 - precision_5: 0.9069 - recall_5: 0.8955 - val_loss: 0.3795 - val_accuracy: 0.8792 - val_precision_5: 0.8782 - val_recall_5: 0.8708 Epoch 20/40 23/23 [==============================] - 5s 225ms/step - loss: 0.2398 - accuracy: 0.9067 - precision_5: 0.9188 - recall_5: 0.8983 - val_loss: 0.3979 - val_accuracy: 0.8583 - val_precision_5: 0.8577 - val_recall_5: 0.8542 Epoch 21/40 23/23 [==============================] - 5s 235ms/step - loss: 0.2177 - accuracy: 0.9248 - precision_5: 0.9306 - recall_5: 0.9150 - val_loss: 0.3915 - val_accuracy: 0.8667 - val_precision_5: 0.8734 - val_recall_5: 0.8625 Epoch 22/40 23/23 [==============================] - 5s 225ms/step - loss: 0.2202 - accuracy: 0.9136 - precision_5: 0.9182 - recall_5: 0.9067 - val_loss: 0.3639 - val_accuracy: 0.8750 - val_precision_5: 0.8782 - val_recall_5: 0.8708 Epoch 23/40 23/23 [==============================] - 5s 228ms/step - loss: 0.2125 - accuracy: 0.9164 - precision_5: 0.9236 - recall_5: 0.9095 - val_loss: 0.3960 - val_accuracy: 0.8458 - val_precision_5: 0.8504 - val_recall_5: 0.8292 Epoch 24/40 23/23 [==============================] - 5s 228ms/step - loss: 0.1906 - accuracy: 0.9318 - precision_5: 0.9419 - recall_5: 0.9262 - val_loss: 0.3873 - val_accuracy: 0.8500 - val_precision_5: 0.8559 - val_recall_5: 0.8417 Epoch 25/40 23/23 [==============================] - 6s 274ms/step - loss: 0.1813 - accuracy: 0.9345 - precision_5: 0.9433 - recall_5: 0.9276 - val_loss: 0.3513 - val_accuracy: 0.8750 - val_precision_5: 0.8782 - val_recall_5: 0.8708 Epoch 26/40 23/23 [==============================] - 5s 222ms/step - loss: 0.1806 - accuracy: 0.9331 - precision_5: 0.9406 - recall_5: 0.9262 - val_loss: 0.3478 - val_accuracy: 0.8792 - val_precision_5: 0.8787 - val_recall_5: 0.8750 Epoch 27/40 23/23 [==============================] - 6s 270ms/step - loss: 0.1597 - accuracy: 0.9415 - precision_5: 0.9478 - recall_5: 0.9359 - val_loss: 0.3414 - val_accuracy: 0.8750 - val_precision_5: 0.8745 - val_recall_5: 0.8708 Epoch 28/40 23/23 [==============================] - 5s 229ms/step - loss: 0.1652 - accuracy: 0.9401 - precision_5: 0.9409 - recall_5: 0.9318 - val_loss: 0.5236 - val_accuracy: 0.8333 - val_precision_5: 0.8522 - val_recall_5: 0.8167 Epoch 29/40 23/23 [==============================] - 7s 298ms/step - loss: 0.2046 - accuracy: 0.9192 - precision_5: 0.9260 - recall_5: 0.9067 - val_loss: 0.3732 - val_accuracy: 0.8750 - val_precision_5: 0.8766 - val_recall_5: 0.8583 Epoch 30/40 23/23 [==============================] - 6s 272ms/step - loss: 0.1700 - accuracy: 0.9387 - precision_5: 0.9491 - recall_5: 0.9345 - val_loss: 0.3699 - val_accuracy: 0.8583 - val_precision_5: 0.8655 - val_recall_5: 0.8583 Epoch 31/40 23/23 [==============================] - 5s 234ms/step - loss: 0.1651 - accuracy: 0.9401 - precision_5: 0.9477 - recall_5: 0.9345 - val_loss: 0.3524 - val_accuracy: 0.8625 - val_precision_5: 0.8697 - val_recall_5: 0.8625 Epoch 32/40 23/23 [==============================] - 6s 269ms/step - loss: 0.1466 - accuracy: 0.9457 - precision_5: 0.9536 - recall_5: 0.9443 - val_loss: 0.3363 - val_accuracy: 0.8833 - val_precision_5: 0.8908 - val_recall_5: 0.8833 Epoch 33/40 23/23 [==============================] - 5s 229ms/step - loss: 0.1631 - accuracy: 0.9415 - precision_5: 0.9480 - recall_5: 0.9387 - val_loss: 0.3574 - val_accuracy: 0.8708 - val_precision_5: 0.8739 - val_recall_5: 0.8667 Epoch 34/40 23/23 [==============================] - 5s 227ms/step - loss: 0.1575 - accuracy: 0.9387 - precision_5: 0.9408 - recall_5: 0.9304 - val_loss: 0.3505 - val_accuracy: 0.8750 - val_precision_5: 0.8824 - val_recall_5: 0.8750 Epoch 35/40 23/23 [==============================] - 6s 260ms/step - loss: 0.1395 - accuracy: 0.9499 - precision_5: 0.9537 - recall_5: 0.9471 - val_loss: 0.4391 - val_accuracy: 0.8625 - val_precision_5: 0.8638 - val_recall_5: 0.8458 Epoch 36/40 23/23 [==============================] - 6s 274ms/step - loss: 0.1433 - accuracy: 0.9540 - precision_5: 0.9593 - recall_5: 0.9526 - val_loss: 0.3254 - val_accuracy: 0.8917 - val_precision_5: 0.8954 - val_recall_5: 0.8917 Epoch 37/40 23/23 [==============================] - 6s 283ms/step - loss: 0.1645 - accuracy: 0.9373 - precision_5: 0.9398 - recall_5: 0.9345 - val_loss: 0.3267 - val_accuracy: 0.8792 - val_precision_5: 0.8787 - val_recall_5: 0.8750 Epoch 38/40 23/23 [==============================] - 5s 229ms/step - loss: 0.1354 - accuracy: 0.9499 - precision_5: 0.9564 - recall_5: 0.9471 - val_loss: 0.3127 - val_accuracy: 0.8958 - val_precision_5: 0.9034 - val_recall_5: 0.8958 Epoch 39/40 23/23 [==============================] - 6s 254ms/step - loss: 0.1151 - accuracy: 0.9624 - precision_5: 0.9649 - recall_5: 0.9582 - val_loss: 0.3250 - val_accuracy: 0.8792 - val_precision_5: 0.8824 - val_recall_5: 0.8750 Epoch 40/40 23/23 [==============================] - 5s 225ms/step - loss: 0.1007 - accuracy: 0.9666 - precision_5: 0.9679 - recall_5: 0.9652 - val_loss: 0.3228 - val_accuracy: 0.8917 - val_precision_5: 0.8917 - val_recall_5: 0.8917
Learning Curves
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history4.history['accuracy'])
plt.plot(history4.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history4.history['precision_5'])
plt.plot(history4.history['val_precision_5'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history4.history['recall_5'])
plt.plot(history4.history['val_recall_5'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model4.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 239ms/step - loss: 0.2823 - accuracy: 0.9042 - precision_5: 0.9034 - recall_5: 0.8958 validation_acc: 90.42 validation_loss: 0.28 validation_precision: 0.90 validation_recall: 0.90
Create a model
model5 = models.Sequential()
model5.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model5.add(layers.MaxPooling2D(4, 4) )
model5.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model5.add(layers.MaxPooling2D(2, 2) )
model5.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model5.add( Flatten() )
model5.add( Dense( 32, activation = 'relu' ) )
model5.add( Dense( 3, activation = 'softmax' ) )
model5.summary()
Model: "sequential_6"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_18 (Conv2D) (None, 126, 126, 32) 896
max_pooling2d_12 (MaxPoolin (None, 31, 31, 32) 0
g2D)
conv2d_19 (Conv2D) (None, 29, 29, 16) 4624
max_pooling2d_13 (MaxPoolin (None, 14, 14, 16) 0
g2D)
conv2d_20 (Conv2D) (None, 12, 12, 8) 1160
flatten_6 (Flatten) (None, 1152) 0
dense_12 (Dense) (None, 32) 36896
dense_13 (Dense) (None, 3) 99
=================================================================
Total params: 43,675
Trainable params: 43,675
Non-trainable params: 0
_________________________________________________________________
Horizontal Flip
datagen = ImageDataGenerator(
rescale=1./255, horizontal_flip=True,width_shift_range=0.2, height_shift_range=0.2)
train_ds = datagen.flow_from_directory(
'./bears/training/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
valid_ds = datagen.flow_from_directory(
'./bears/validation/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
test_ds = datagen.flow_from_directory(
'./bears/test/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
Found 718 images belonging to 3 classes. Found 240 images belonging to 3 classes. Found 240 images belonging to 3 classes.
N=3
plt.figure (figsize = (15,10))
for my_batch in train_ds:
images = my_batch[0]
labels = my_batch[1]
for x in range(0,3):
for y in range(0,3):
plt.subplot(N,N,x*N+y+1)
plt.axis('off')
plt.imshow(images[x*N+y])
break
#from tensorflow.keras.metrics import Precision, Recall
model5.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history5 = model5.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 13s 433ms/step - loss: 1.0491 - accuracy: 0.4206 - precision_8: 0.8611 - recall_8: 0.0432 - val_loss: 0.9087 - val_accuracy: 0.5250 - val_precision_8: 0.7500 - val_recall_8: 0.2875 Epoch 2/40 23/23 [==============================] - 9s 383ms/step - loss: 0.7747 - accuracy: 0.6309 - precision_8: 0.7277 - recall_8: 0.4763 - val_loss: 0.7569 - val_accuracy: 0.6417 - val_precision_8: 0.7127 - val_recall_8: 0.5375 Epoch 3/40 23/23 [==============================] - 8s 359ms/step - loss: 0.6379 - accuracy: 0.7298 - precision_8: 0.7750 - recall_8: 0.6476 - val_loss: 0.7234 - val_accuracy: 0.6250 - val_precision_8: 0.6498 - val_recall_8: 0.5875 Epoch 4/40 23/23 [==============================] - 9s 404ms/step - loss: 0.6692 - accuracy: 0.6825 - precision_8: 0.7271 - recall_8: 0.6421 - val_loss: 0.6595 - val_accuracy: 0.7417 - val_precision_8: 0.7830 - val_recall_8: 0.6917 Epoch 5/40 23/23 [==============================] - 9s 403ms/step - loss: 0.5910 - accuracy: 0.7493 - precision_8: 0.7762 - recall_8: 0.7006 - val_loss: 0.6439 - val_accuracy: 0.7250 - val_precision_8: 0.7411 - val_recall_8: 0.6917 Epoch 6/40 23/23 [==============================] - 9s 400ms/step - loss: 0.5456 - accuracy: 0.7911 - precision_8: 0.8068 - recall_8: 0.7563 - val_loss: 0.5847 - val_accuracy: 0.7500 - val_precision_8: 0.7655 - val_recall_8: 0.7208 Epoch 7/40 23/23 [==============================] - 8s 362ms/step - loss: 0.5864 - accuracy: 0.7604 - precision_8: 0.7879 - recall_8: 0.7242 - val_loss: 0.5514 - val_accuracy: 0.7667 - val_precision_8: 0.8278 - val_recall_8: 0.7208 Epoch 8/40 23/23 [==============================] - 10s 446ms/step - loss: 0.4593 - accuracy: 0.8301 - precision_8: 0.8519 - recall_8: 0.8008 - val_loss: 0.7106 - val_accuracy: 0.7333 - val_precision_8: 0.7384 - val_recall_8: 0.7292 Epoch 9/40 23/23 [==============================] - 9s 402ms/step - loss: 0.5358 - accuracy: 0.7799 - precision_8: 0.8036 - recall_8: 0.7521 - val_loss: 0.6029 - val_accuracy: 0.7417 - val_precision_8: 0.7692 - val_recall_8: 0.7083 Epoch 10/40 23/23 [==============================] - 9s 411ms/step - loss: 0.4463 - accuracy: 0.8315 - precision_8: 0.8569 - recall_8: 0.8008 - val_loss: 0.4821 - val_accuracy: 0.8042 - val_precision_8: 0.8170 - val_recall_8: 0.7625 Epoch 11/40 23/23 [==============================] - 9s 378ms/step - loss: 0.4064 - accuracy: 0.8565 - precision_8: 0.8743 - recall_8: 0.8426 - val_loss: 0.5934 - val_accuracy: 0.7583 - val_precision_8: 0.7639 - val_recall_8: 0.7417 Epoch 12/40 23/23 [==============================] - 8s 359ms/step - loss: 0.3806 - accuracy: 0.8565 - precision_8: 0.8737 - recall_8: 0.8384 - val_loss: 0.5367 - val_accuracy: 0.7917 - val_precision_8: 0.8166 - val_recall_8: 0.7792 Epoch 13/40 23/23 [==============================] - 9s 378ms/step - loss: 0.3673 - accuracy: 0.8705 - precision_8: 0.8795 - recall_8: 0.8538 - val_loss: 0.4565 - val_accuracy: 0.8375 - val_precision_8: 0.8465 - val_recall_8: 0.8042 Epoch 14/40 23/23 [==============================] - 9s 399ms/step - loss: 0.3619 - accuracy: 0.8593 - precision_8: 0.8743 - recall_8: 0.8426 - val_loss: 0.4525 - val_accuracy: 0.8458 - val_precision_8: 0.8640 - val_recall_8: 0.8208 Epoch 15/40 23/23 [==============================] - 9s 411ms/step - loss: 0.3724 - accuracy: 0.8649 - precision_8: 0.8871 - recall_8: 0.8426 - val_loss: 0.4804 - val_accuracy: 0.8042 - val_precision_8: 0.8067 - val_recall_8: 0.8000 Epoch 16/40 23/23 [==============================] - 9s 389ms/step - loss: 0.3071 - accuracy: 0.8914 - precision_8: 0.9043 - recall_8: 0.8816 - val_loss: 0.5068 - val_accuracy: 0.8292 - val_precision_8: 0.8462 - val_recall_8: 0.8250 Epoch 17/40 23/23 [==============================] - 8s 360ms/step - loss: 0.3707 - accuracy: 0.8468 - precision_8: 0.8665 - recall_8: 0.8315 - val_loss: 0.4159 - val_accuracy: 0.8458 - val_precision_8: 0.8696 - val_recall_8: 0.8333 Epoch 18/40 23/23 [==============================] - 9s 367ms/step - loss: 0.3220 - accuracy: 0.8816 - precision_8: 0.8964 - recall_8: 0.8677 - val_loss: 0.4510 - val_accuracy: 0.8542 - val_precision_8: 0.8638 - val_recall_8: 0.8458 Epoch 19/40 23/23 [==============================] - 9s 401ms/step - loss: 0.3400 - accuracy: 0.8663 - precision_8: 0.8748 - recall_8: 0.8565 - val_loss: 0.4495 - val_accuracy: 0.8292 - val_precision_8: 0.8496 - val_recall_8: 0.8000 Epoch 20/40 23/23 [==============================] - 9s 401ms/step - loss: 0.3303 - accuracy: 0.8663 - precision_8: 0.8797 - recall_8: 0.8552 - val_loss: 0.4512 - val_accuracy: 0.8500 - val_precision_8: 0.8596 - val_recall_8: 0.8417 Epoch 21/40 23/23 [==============================] - 9s 404ms/step - loss: 0.3451 - accuracy: 0.8677 - precision_8: 0.8878 - recall_8: 0.8593 - val_loss: 0.4141 - val_accuracy: 0.8417 - val_precision_8: 0.8504 - val_recall_8: 0.8292 Epoch 22/40 23/23 [==============================] - 8s 370ms/step - loss: 0.3066 - accuracy: 0.8802 - precision_8: 0.8993 - recall_8: 0.8705 - val_loss: 0.4940 - val_accuracy: 0.8042 - val_precision_8: 0.8139 - val_recall_8: 0.7833 Epoch 23/40 23/23 [==============================] - 9s 399ms/step - loss: 0.3053 - accuracy: 0.8872 - precision_8: 0.9000 - recall_8: 0.8774 - val_loss: 0.4338 - val_accuracy: 0.8708 - val_precision_8: 0.8841 - val_recall_8: 0.8583 Epoch 24/40 23/23 [==============================] - 9s 401ms/step - loss: 0.2998 - accuracy: 0.8997 - precision_8: 0.9086 - recall_8: 0.8719 - val_loss: 0.4366 - val_accuracy: 0.8333 - val_precision_8: 0.8468 - val_recall_8: 0.8292 Epoch 25/40 23/23 [==============================] - 9s 397ms/step - loss: 0.2888 - accuracy: 0.8886 - precision_8: 0.9029 - recall_8: 0.8802 - val_loss: 0.4687 - val_accuracy: 0.8333 - val_precision_8: 0.8390 - val_recall_8: 0.8250 Epoch 26/40 23/23 [==============================] - 9s 376ms/step - loss: 0.3414 - accuracy: 0.8691 - precision_8: 0.8798 - recall_8: 0.8565 - val_loss: 0.4784 - val_accuracy: 0.8333 - val_precision_8: 0.8398 - val_recall_8: 0.8083 Epoch 27/40 23/23 [==============================] - 9s 403ms/step - loss: 0.3423 - accuracy: 0.8719 - precision_8: 0.8915 - recall_8: 0.8468 - val_loss: 0.3476 - val_accuracy: 0.8583 - val_precision_8: 0.8745 - val_recall_8: 0.8417 Epoch 28/40 23/23 [==============================] - 9s 395ms/step - loss: 0.3030 - accuracy: 0.8858 - precision_8: 0.8935 - recall_8: 0.8760 - val_loss: 0.4596 - val_accuracy: 0.8417 - val_precision_8: 0.8439 - val_recall_8: 0.8333 Epoch 29/40 23/23 [==============================] - 9s 383ms/step - loss: 0.2688 - accuracy: 0.9053 - precision_8: 0.9192 - recall_8: 0.8872 - val_loss: 0.3680 - val_accuracy: 0.8833 - val_precision_8: 0.8856 - val_recall_8: 0.8708 Epoch 30/40 23/23 [==============================] - 8s 358ms/step - loss: 0.2657 - accuracy: 0.8997 - precision_8: 0.9068 - recall_8: 0.8942 - val_loss: 0.3820 - val_accuracy: 0.8750 - val_precision_8: 0.8734 - val_recall_8: 0.8625 Epoch 31/40 23/23 [==============================] - 8s 360ms/step - loss: 0.3069 - accuracy: 0.8649 - precision_8: 0.8771 - recall_8: 0.8552 - val_loss: 0.3945 - val_accuracy: 0.8708 - val_precision_8: 0.8961 - val_recall_8: 0.8625 Epoch 32/40 23/23 [==============================] - 9s 401ms/step - loss: 0.2542 - accuracy: 0.9039 - precision_8: 0.9239 - recall_8: 0.8955 - val_loss: 0.3226 - val_accuracy: 0.9042 - val_precision_8: 0.9076 - val_recall_8: 0.9000 Epoch 33/40 23/23 [==============================] - 9s 395ms/step - loss: 0.2593 - accuracy: 0.9053 - precision_8: 0.9117 - recall_8: 0.8914 - val_loss: 0.3757 - val_accuracy: 0.8625 - val_precision_8: 0.8798 - val_recall_8: 0.8542 Epoch 34/40 23/23 [==============================] - 8s 369ms/step - loss: 0.2363 - accuracy: 0.9136 - precision_8: 0.9282 - recall_8: 0.8997 - val_loss: 0.3528 - val_accuracy: 0.8708 - val_precision_8: 0.8814 - val_recall_8: 0.8667 Epoch 35/40 23/23 [==============================] - 8s 362ms/step - loss: 0.2914 - accuracy: 0.8858 - precision_8: 0.8999 - recall_8: 0.8760 - val_loss: 0.3456 - val_accuracy: 0.8708 - val_precision_8: 0.8889 - val_recall_8: 0.8667 Epoch 36/40 23/23 [==============================] - 9s 408ms/step - loss: 0.3018 - accuracy: 0.8900 - precision_8: 0.9014 - recall_8: 0.8788 - val_loss: 0.3499 - val_accuracy: 0.8917 - val_precision_8: 0.8987 - val_recall_8: 0.8875 Epoch 37/40 23/23 [==============================] - 9s 399ms/step - loss: 0.2572 - accuracy: 0.9025 - precision_8: 0.9155 - recall_8: 0.8900 - val_loss: 0.3238 - val_accuracy: 0.8708 - val_precision_8: 0.8927 - val_recall_8: 0.8667 Epoch 38/40 23/23 [==============================] - 9s 401ms/step - loss: 0.2332 - accuracy: 0.9039 - precision_8: 0.9121 - recall_8: 0.8955 - val_loss: 0.3464 - val_accuracy: 0.8708 - val_precision_8: 0.8771 - val_recall_8: 0.8625 Epoch 39/40 23/23 [==============================] - 9s 385ms/step - loss: 0.2389 - accuracy: 0.9053 - precision_8: 0.9169 - recall_8: 0.8914 - val_loss: 0.3271 - val_accuracy: 0.8667 - val_precision_8: 0.8889 - val_recall_8: 0.8667 Epoch 40/40 23/23 [==============================] - 8s 355ms/step - loss: 0.2322 - accuracy: 0.9192 - precision_8: 0.9248 - recall_8: 0.9081 - val_loss: 0.4035 - val_accuracy: 0.8750 - val_precision_8: 0.8787 - val_recall_8: 0.8750
Plot the Accuracy, Precision, and Recall
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history5.history['accuracy'])
plt.plot(history5.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history5.history['precision_8'])
plt.plot(history5.history['val_precision_8'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history5.history['recall_8'])
plt.plot(history5.history['val_recall_8'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model5.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 3s 341ms/step - loss: 0.3815 - accuracy: 0.8667 - precision_8: 0.8776 - recall_8: 0.8667 validation_acc: 86.67 validation_loss: 0.38 validation_precision: 0.88 validation_recall: 0.87
Augmentation: Random Rotation between -90 and 90 degrees
model6 = models.Sequential()
model6.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model6.add(layers.MaxPooling2D(4, 4) )
model6.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model6.add(layers.MaxPooling2D(2, 2) )
model6.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model6.add( Flatten() )
model6.add( Dense( 32, activation = 'relu' ) )
model6.add( Dense( 3, activation = 'softmax' ) )
model6.summary()
Model: "sequential_7"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_21 (Conv2D) (None, 126, 126, 32) 896
max_pooling2d_14 (MaxPoolin (None, 31, 31, 32) 0
g2D)
conv2d_22 (Conv2D) (None, 29, 29, 16) 4624
max_pooling2d_15 (MaxPoolin (None, 14, 14, 16) 0
g2D)
conv2d_23 (Conv2D) (None, 12, 12, 8) 1160
flatten_7 (Flatten) (None, 1152) 0
dense_14 (Dense) (None, 32) 36896
dense_15 (Dense) (None, 3) 99
=================================================================
Total params: 43,675
Trainable params: 43,675
Non-trainable params: 0
_________________________________________________________________
datagen = ImageDataGenerator(rescale=1./255, rotation_range=90, width_shift_range=0.2, height_shift_range=0.2)
train_ds = datagen.flow_from_directory(
'./bears/training/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
valid_ds = datagen.flow_from_directory(
'./bears/validation/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
test_ds = datagen.flow_from_directory(
'./bears/test/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
Found 718 images belonging to 3 classes. Found 240 images belonging to 3 classes. Found 240 images belonging to 3 classes.
N=3
plt.figure (figsize = (10,15))
for my_batch in train_ds:
images = my_batch[0]
labels = my_batch[1]
for x in range(0,3):
for y in range(0,3):
plt.subplot(N,N,x*N+y+1)
plt.axis('off')
plt.imshow(images[x*N+y])
break
model6.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history6 = model6.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 11s 407ms/step - loss: 1.1063 - accuracy: 0.3579 - precision_9: 0.0000e+00 - recall_9: 0.0000e+00 - val_loss: 1.1004 - val_accuracy: 0.4333 - val_precision_9: 0.0000e+00 - val_recall_9: 0.0000e+00 Epoch 2/40 23/23 [==============================] - 8s 365ms/step - loss: 1.0461 - accuracy: 0.5153 - precision_9: 0.8750 - recall_9: 0.0390 - val_loss: 0.9832 - val_accuracy: 0.4583 - val_precision_9: 0.8281 - val_recall_9: 0.2208 Epoch 3/40 23/23 [==============================] - 9s 407ms/step - loss: 0.8208 - accuracy: 0.6072 - precision_9: 0.7112 - recall_9: 0.4526 - val_loss: 0.7895 - val_accuracy: 0.6417 - val_precision_9: 0.6868 - val_recall_9: 0.5208 Epoch 4/40 23/23 [==============================] - 9s 406ms/step - loss: 0.7254 - accuracy: 0.6727 - precision_9: 0.7050 - recall_9: 0.5724 - val_loss: 0.7510 - val_accuracy: 0.6208 - val_precision_9: 0.6703 - val_recall_9: 0.5083 Epoch 5/40 23/23 [==============================] - 9s 396ms/step - loss: 0.7078 - accuracy: 0.6797 - precision_9: 0.7148 - recall_9: 0.5724 - val_loss: 0.7706 - val_accuracy: 0.6625 - val_precision_9: 0.6946 - val_recall_9: 0.5875 Epoch 6/40 23/23 [==============================] - 10s 445ms/step - loss: 0.6701 - accuracy: 0.6922 - precision_9: 0.7366 - recall_9: 0.6309 - val_loss: 0.6357 - val_accuracy: 0.7208 - val_precision_9: 0.7621 - val_recall_9: 0.6542 Epoch 7/40 23/23 [==============================] - 9s 364ms/step - loss: 0.6444 - accuracy: 0.7201 - precision_9: 0.7556 - recall_9: 0.6588 - val_loss: 0.6556 - val_accuracy: 0.6917 - val_precision_9: 0.7136 - val_recall_9: 0.6125 Epoch 8/40 23/23 [==============================] - 9s 399ms/step - loss: 0.6024 - accuracy: 0.7660 - precision_9: 0.7972 - recall_9: 0.7228 - val_loss: 0.6447 - val_accuracy: 0.6833 - val_precision_9: 0.7136 - val_recall_9: 0.6125 Epoch 9/40 23/23 [==============================] - 10s 435ms/step - loss: 0.5877 - accuracy: 0.7758 - precision_9: 0.8056 - recall_9: 0.7270 - val_loss: 0.6624 - val_accuracy: 0.7458 - val_precision_9: 0.7511 - val_recall_9: 0.7292 Epoch 10/40 23/23 [==============================] - 9s 403ms/step - loss: 0.5101 - accuracy: 0.7953 - precision_9: 0.8097 - recall_9: 0.7702 - val_loss: 0.7855 - val_accuracy: 0.7042 - val_precision_9: 0.7149 - val_recall_9: 0.7000 Epoch 11/40 23/23 [==============================] - 8s 366ms/step - loss: 0.5175 - accuracy: 0.8064 - precision_9: 0.8281 - recall_9: 0.7786 - val_loss: 0.5197 - val_accuracy: 0.7875 - val_precision_9: 0.8287 - val_recall_9: 0.7458 Epoch 12/40 23/23 [==============================] - 9s 385ms/step - loss: 0.4504 - accuracy: 0.8357 - precision_9: 0.8503 - recall_9: 0.8148 - val_loss: 0.5497 - val_accuracy: 0.7833 - val_precision_9: 0.7974 - val_recall_9: 0.7708 Epoch 13/40 23/23 [==============================] - 9s 408ms/step - loss: 0.4115 - accuracy: 0.8440 - precision_9: 0.8651 - recall_9: 0.8217 - val_loss: 0.5353 - val_accuracy: 0.7958 - val_precision_9: 0.8000 - val_recall_9: 0.7833 Epoch 14/40 23/23 [==============================] - 9s 397ms/step - loss: 0.4112 - accuracy: 0.8426 - precision_9: 0.8590 - recall_9: 0.8231 - val_loss: 0.4943 - val_accuracy: 0.7875 - val_precision_9: 0.7991 - val_recall_9: 0.7625 Epoch 15/40 23/23 [==============================] - 9s 380ms/step - loss: 0.3962 - accuracy: 0.8384 - precision_9: 0.8594 - recall_9: 0.8259 - val_loss: 0.4233 - val_accuracy: 0.8500 - val_precision_9: 0.8504 - val_recall_9: 0.8292 Epoch 16/40 23/23 [==============================] - 8s 360ms/step - loss: 0.5102 - accuracy: 0.7674 - precision_9: 0.7893 - recall_9: 0.7409 - val_loss: 0.5568 - val_accuracy: 0.7917 - val_precision_9: 0.7974 - val_recall_9: 0.7542 Epoch 17/40 23/23 [==============================] - 8s 362ms/step - loss: 0.4276 - accuracy: 0.8426 - precision_9: 0.8601 - recall_9: 0.8134 - val_loss: 0.4778 - val_accuracy: 0.8083 - val_precision_9: 0.8391 - val_recall_9: 0.8042 Epoch 18/40 23/23 [==============================] - 9s 401ms/step - loss: 0.4107 - accuracy: 0.8510 - precision_9: 0.8621 - recall_9: 0.8357 - val_loss: 0.3749 - val_accuracy: 0.8833 - val_precision_9: 0.8918 - val_recall_9: 0.8583 Epoch 19/40 23/23 [==============================] - 9s 401ms/step - loss: 0.3606 - accuracy: 0.8593 - precision_9: 0.8665 - recall_9: 0.8315 - val_loss: 0.4052 - val_accuracy: 0.8667 - val_precision_9: 0.8697 - val_recall_9: 0.8625 Epoch 20/40 23/23 [==============================] - 11s 500ms/step - loss: 0.3653 - accuracy: 0.8663 - precision_9: 0.8836 - recall_9: 0.8454 - val_loss: 0.4199 - val_accuracy: 0.8750 - val_precision_9: 0.8793 - val_recall_9: 0.8500 Epoch 21/40 23/23 [==============================] - 9s 382ms/step - loss: 0.3703 - accuracy: 0.8635 - precision_9: 0.8834 - recall_9: 0.8440 - val_loss: 0.5146 - val_accuracy: 0.8167 - val_precision_9: 0.8421 - val_recall_9: 0.8000 Epoch 22/40 23/23 [==============================] - 9s 373ms/step - loss: 0.3821 - accuracy: 0.8482 - precision_9: 0.8693 - recall_9: 0.8245 - val_loss: 0.4474 - val_accuracy: 0.8417 - val_precision_9: 0.8559 - val_recall_9: 0.8167 Epoch 23/40 23/23 [==============================] - 9s 406ms/step - loss: 0.3739 - accuracy: 0.8733 - precision_9: 0.8832 - recall_9: 0.8635 - val_loss: 0.3948 - val_accuracy: 0.8542 - val_precision_9: 0.8821 - val_recall_9: 0.8417 Epoch 24/40 23/23 [==============================] - 9s 405ms/step - loss: 0.3883 - accuracy: 0.8593 - precision_9: 0.8819 - recall_9: 0.8217 - val_loss: 0.4113 - val_accuracy: 0.8333 - val_precision_9: 0.8622 - val_recall_9: 0.8083 Epoch 25/40 23/23 [==============================] - 8s 361ms/step - loss: 0.3229 - accuracy: 0.8760 - precision_9: 0.8828 - recall_9: 0.8496 - val_loss: 0.3875 - val_accuracy: 0.8625 - val_precision_9: 0.8729 - val_recall_9: 0.8583 Epoch 26/40 23/23 [==============================] - 9s 399ms/step - loss: 0.3586 - accuracy: 0.8635 - precision_9: 0.8719 - recall_9: 0.8440 - val_loss: 0.4349 - val_accuracy: 0.8375 - val_precision_9: 0.8491 - val_recall_9: 0.8208 Epoch 27/40 23/23 [==============================] - 9s 403ms/step - loss: 0.3431 - accuracy: 0.8691 - precision_9: 0.8934 - recall_9: 0.8524 - val_loss: 0.3755 - val_accuracy: 0.8583 - val_precision_9: 0.8602 - val_recall_9: 0.8458 Epoch 28/40 23/23 [==============================] - 10s 419ms/step - loss: 0.3067 - accuracy: 0.8872 - precision_9: 0.9007 - recall_9: 0.8719 - val_loss: 0.4075 - val_accuracy: 0.8250 - val_precision_9: 0.8369 - val_recall_9: 0.8125 Epoch 29/40 23/23 [==============================] - 9s 388ms/step - loss: 0.3179 - accuracy: 0.8858 - precision_9: 0.8984 - recall_9: 0.8621 - val_loss: 0.3723 - val_accuracy: 0.8667 - val_precision_9: 0.8870 - val_recall_9: 0.8500 Epoch 30/40 23/23 [==============================] - 8s 362ms/step - loss: 0.2899 - accuracy: 0.8816 - precision_9: 0.8940 - recall_9: 0.8691 - val_loss: 0.3866 - val_accuracy: 0.8667 - val_precision_9: 0.8707 - val_recall_9: 0.8417 Epoch 31/40 23/23 [==============================] - 9s 364ms/step - loss: 0.3216 - accuracy: 0.8830 - precision_9: 0.8978 - recall_9: 0.8691 - val_loss: 0.4603 - val_accuracy: 0.8208 - val_precision_9: 0.8341 - val_recall_9: 0.7958 Epoch 32/40 23/23 [==============================] - 9s 401ms/step - loss: 0.3346 - accuracy: 0.8816 - precision_9: 0.8941 - recall_9: 0.8705 - val_loss: 0.3832 - val_accuracy: 0.8667 - val_precision_9: 0.8803 - val_recall_9: 0.8583 Epoch 33/40 23/23 [==============================] - 9s 403ms/step - loss: 0.2765 - accuracy: 0.8955 - precision_9: 0.9108 - recall_9: 0.8816 - val_loss: 0.3899 - val_accuracy: 0.8500 - val_precision_9: 0.8602 - val_recall_9: 0.8458 Epoch 34/40 23/23 [==============================] - 9s 389ms/step - loss: 0.3479 - accuracy: 0.8579 - precision_9: 0.8686 - recall_9: 0.8468 - val_loss: 0.4770 - val_accuracy: 0.8000 - val_precision_9: 0.8174 - val_recall_9: 0.7833 Epoch 35/40 23/23 [==============================] - 8s 363ms/step - loss: 0.2902 - accuracy: 0.8886 - precision_9: 0.8960 - recall_9: 0.8760 - val_loss: 0.3325 - val_accuracy: 0.8708 - val_precision_9: 0.8803 - val_recall_9: 0.8583 Epoch 36/40 23/23 [==============================] - 9s 405ms/step - loss: 0.2648 - accuracy: 0.8983 - precision_9: 0.9057 - recall_9: 0.8830 - val_loss: 0.3181 - val_accuracy: 0.8958 - val_precision_9: 0.9025 - val_recall_9: 0.8875 Epoch 37/40 23/23 [==============================] - 9s 396ms/step - loss: 0.2929 - accuracy: 0.8900 - precision_9: 0.8983 - recall_9: 0.8733 - val_loss: 0.3758 - val_accuracy: 0.8750 - val_precision_9: 0.8782 - val_recall_9: 0.8708 Epoch 38/40 23/23 [==============================] - 9s 404ms/step - loss: 0.2827 - accuracy: 0.8886 - precision_9: 0.9088 - recall_9: 0.8747 - val_loss: 0.3184 - val_accuracy: 0.8667 - val_precision_9: 0.8961 - val_recall_9: 0.8625 Epoch 39/40 23/23 [==============================] - 8s 357ms/step - loss: 0.2709 - accuracy: 0.8928 - precision_9: 0.9004 - recall_9: 0.8816 - val_loss: 0.3930 - val_accuracy: 0.8458 - val_precision_9: 0.8511 - val_recall_9: 0.8333 Epoch 40/40 23/23 [==============================] - 9s 403ms/step - loss: 0.2728 - accuracy: 0.8886 - precision_9: 0.9052 - recall_9: 0.8774 - val_loss: 0.4244 - val_accuracy: 0.8417 - val_precision_9: 0.8481 - val_recall_9: 0.8375
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history6.history['accuracy'])
plt.plot(history6.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history6.history['precision_9'])
plt.plot(history6.history['val_precision_9'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history6.history['recall_9'])
plt.plot(history6.history['val_recall_9'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model6.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 240ms/step - loss: 0.4022 - accuracy: 0.8458 - precision_9: 0.8517 - recall_9: 0.8375 validation_acc: 84.58 validation_loss: 0.40 validation_precision: 0.85 validation_recall: 0.84
Augmentation: Zoom
model7 = models.Sequential()
model7.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model7.add(layers.MaxPooling2D(4, 4) )
model7.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model7.add(layers.MaxPooling2D(2, 2) )
model7.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model7.add( Flatten() )
model7.add( Dense( 32, activation = 'relu' ) )
model7.add( Dense( 3, activation = 'softmax' ) )
model7.summary()
Model: "sequential_8"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d_24 (Conv2D) (None, 126, 126, 32) 896
max_pooling2d_16 (MaxPoolin (None, 31, 31, 32) 0
g2D)
conv2d_25 (Conv2D) (None, 29, 29, 16) 4624
max_pooling2d_17 (MaxPoolin (None, 14, 14, 16) 0
g2D)
conv2d_26 (Conv2D) (None, 12, 12, 8) 1160
flatten_8 (Flatten) (None, 1152) 0
dense_16 (Dense) (None, 32) 36896
dense_17 (Dense) (None, 3) 99
=================================================================
Total params: 43,675
Trainable params: 43,675
Non-trainable params: 0
_________________________________________________________________
datagen = ImageDataGenerator(rescale=1./255, zoom_range=0.2, width_shift_range=0.2, height_shift_range=0.2)
train_ds = datagen.flow_from_directory(
'./bears/training/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
valid_ds = datagen.flow_from_directory(
'./bears/validation/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
test_ds = datagen.flow_from_directory(
'./bears/test/',
target_size=(128, 128),
shuffle=True,
batch_size=32)
Found 718 images belonging to 3 classes. Found 240 images belonging to 3 classes. Found 240 images belonging to 3 classes.
N=3
plt.figure (figsize = (10,10))
for my_batch in train_ds:
images = my_batch[0]
labels = my_batch[1]
for x in range(0,3):
for y in range(0,3):
plt.subplot(N,N,x*N+y+1)
plt.axis('off')
plt.imshow(images[x*N+y])
break
model7.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history7 = model7.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 11s 398ms/step - loss: 0.9455 - accuracy: 0.5543 - precision_10: 0.7824 - recall_10: 0.2103 - val_loss: 0.7524 - val_accuracy: 0.6958 - val_precision_10: 0.7651 - val_recall_10: 0.5292 Epoch 2/40 23/23 [==============================] - 9s 399ms/step - loss: 0.6402 - accuracy: 0.7368 - precision_10: 0.7892 - recall_10: 0.6727 - val_loss: 0.6434 - val_accuracy: 0.7375 - val_precision_10: 0.7600 - val_recall_10: 0.7125 Epoch 3/40 23/23 [==============================] - 9s 398ms/step - loss: 0.6135 - accuracy: 0.7382 - precision_10: 0.7709 - recall_10: 0.7075 - val_loss: 0.7414 - val_accuracy: 0.6750 - val_precision_10: 0.7022 - val_recall_10: 0.6583 Epoch 4/40 23/23 [==============================] - 9s 402ms/step - loss: 0.5621 - accuracy: 0.7841 - precision_10: 0.8061 - recall_10: 0.7409 - val_loss: 0.5477 - val_accuracy: 0.8000 - val_precision_10: 0.8037 - val_recall_10: 0.7333 Epoch 5/40 23/23 [==============================] - 9s 398ms/step - loss: 0.4731 - accuracy: 0.8245 - precision_10: 0.8380 - recall_10: 0.7855 - val_loss: 0.5285 - val_accuracy: 0.8042 - val_precision_10: 0.8190 - val_recall_10: 0.7917 Epoch 6/40 23/23 [==============================] - 11s 498ms/step - loss: 0.4313 - accuracy: 0.8343 - precision_10: 0.8618 - recall_10: 0.8162 - val_loss: 0.5298 - val_accuracy: 0.8000 - val_precision_10: 0.8246 - val_recall_10: 0.7833 Epoch 7/40 23/23 [==============================] - 9s 373ms/step - loss: 0.4052 - accuracy: 0.8454 - precision_10: 0.8650 - recall_10: 0.8301 - val_loss: 0.5077 - val_accuracy: 0.8333 - val_precision_10: 0.8393 - val_recall_10: 0.7833 Epoch 8/40 23/23 [==============================] - 9s 396ms/step - loss: 0.3852 - accuracy: 0.8621 - precision_10: 0.8739 - recall_10: 0.8398 - val_loss: 0.4721 - val_accuracy: 0.8333 - val_precision_10: 0.8498 - val_recall_10: 0.8250 Epoch 9/40 23/23 [==============================] - 9s 398ms/step - loss: 0.3918 - accuracy: 0.8468 - precision_10: 0.8672 - recall_10: 0.8273 - val_loss: 0.4867 - val_accuracy: 0.8333 - val_precision_10: 0.8428 - val_recall_10: 0.8042 Epoch 10/40 23/23 [==============================] - 9s 396ms/step - loss: 0.4498 - accuracy: 0.8231 - precision_10: 0.8446 - recall_10: 0.8022 - val_loss: 0.4524 - val_accuracy: 0.8375 - val_precision_10: 0.8553 - val_recall_10: 0.8125 Epoch 11/40 23/23 [==============================] - 8s 361ms/step - loss: 0.3267 - accuracy: 0.8691 - precision_10: 0.8910 - recall_10: 0.8538 - val_loss: 0.4687 - val_accuracy: 0.8167 - val_precision_10: 0.8348 - val_recall_10: 0.8000 Epoch 12/40 23/23 [==============================] - 9s 389ms/step - loss: 0.3933 - accuracy: 0.8496 - precision_10: 0.8612 - recall_10: 0.8384 - val_loss: 0.4907 - val_accuracy: 0.8375 - val_precision_10: 0.8383 - val_recall_10: 0.8208 Epoch 13/40 23/23 [==============================] - 9s 400ms/step - loss: 0.3713 - accuracy: 0.8621 - precision_10: 0.8755 - recall_10: 0.8426 - val_loss: 0.4152 - val_accuracy: 0.8417 - val_precision_10: 0.8468 - val_recall_10: 0.8292 Epoch 14/40 23/23 [==============================] - 9s 405ms/step - loss: 0.3063 - accuracy: 0.8872 - precision_10: 0.8984 - recall_10: 0.8747 - val_loss: 0.4290 - val_accuracy: 0.8583 - val_precision_10: 0.8577 - val_recall_10: 0.8542 Epoch 15/40 23/23 [==============================] - 8s 359ms/step - loss: 0.3413 - accuracy: 0.8733 - precision_10: 0.8897 - recall_10: 0.8649 - val_loss: 0.4973 - val_accuracy: 0.8125 - val_precision_10: 0.8297 - val_recall_10: 0.7917 Epoch 16/40 23/23 [==============================] - 8s 356ms/step - loss: 0.3362 - accuracy: 0.8802 - precision_10: 0.8994 - recall_10: 0.8719 - val_loss: 0.3626 - val_accuracy: 0.8792 - val_precision_10: 0.8766 - val_recall_10: 0.8583 Epoch 17/40 23/23 [==============================] - 9s 378ms/step - loss: 0.2983 - accuracy: 0.8886 - precision_10: 0.9063 - recall_10: 0.8760 - val_loss: 0.3656 - val_accuracy: 0.8792 - val_precision_10: 0.8771 - val_recall_10: 0.8625 Epoch 18/40 23/23 [==============================] - 10s 445ms/step - loss: 0.3433 - accuracy: 0.8691 - precision_10: 0.8750 - recall_10: 0.8579 - val_loss: 0.6067 - val_accuracy: 0.7792 - val_precision_10: 0.7957 - val_recall_10: 0.7625 Epoch 19/40 23/23 [==============================] - 9s 403ms/step - loss: 0.3469 - accuracy: 0.8816 - precision_10: 0.8929 - recall_10: 0.8593 - val_loss: 0.3885 - val_accuracy: 0.8500 - val_precision_10: 0.8658 - val_recall_10: 0.8333 Epoch 20/40 23/23 [==============================] - 8s 355ms/step - loss: 0.2850 - accuracy: 0.8997 - precision_10: 0.9163 - recall_10: 0.8844 - val_loss: 0.3707 - val_accuracy: 0.8792 - val_precision_10: 0.8828 - val_recall_10: 0.8792 Epoch 21/40 23/23 [==============================] - 9s 400ms/step - loss: 0.2600 - accuracy: 0.9011 - precision_10: 0.9160 - recall_10: 0.8955 - val_loss: 0.3528 - val_accuracy: 0.8875 - val_precision_10: 0.9004 - val_recall_10: 0.8667 Epoch 22/40 23/23 [==============================] - 9s 403ms/step - loss: 0.2756 - accuracy: 0.8914 - precision_10: 0.9020 - recall_10: 0.8844 - val_loss: 0.3884 - val_accuracy: 0.8750 - val_precision_10: 0.8739 - val_recall_10: 0.8667 Epoch 23/40 23/23 [==============================] - 9s 403ms/step - loss: 0.2982 - accuracy: 0.8886 - precision_10: 0.9037 - recall_10: 0.8760 - val_loss: 0.3596 - val_accuracy: 0.8542 - val_precision_10: 0.8638 - val_recall_10: 0.8458 Epoch 24/40 23/23 [==============================] - 8s 358ms/step - loss: 0.2794 - accuracy: 0.8914 - precision_10: 0.9057 - recall_10: 0.8830 - val_loss: 0.4307 - val_accuracy: 0.8208 - val_precision_10: 0.8235 - val_recall_10: 0.8167 Epoch 25/40 23/23 [==============================] - 9s 397ms/step - loss: 0.2515 - accuracy: 0.8955 - precision_10: 0.9058 - recall_10: 0.8844 - val_loss: 0.2992 - val_accuracy: 0.8833 - val_precision_10: 0.9021 - val_recall_10: 0.8833 Epoch 26/40 23/23 [==============================] - 9s 403ms/step - loss: 0.2544 - accuracy: 0.8983 - precision_10: 0.9081 - recall_10: 0.8942 - val_loss: 0.3530 - val_accuracy: 0.8875 - val_precision_10: 0.8927 - val_recall_10: 0.8667 Epoch 27/40 23/23 [==============================] - 9s 392ms/step - loss: 0.2645 - accuracy: 0.8914 - precision_10: 0.8993 - recall_10: 0.8830 - val_loss: 0.3664 - val_accuracy: 0.8583 - val_precision_10: 0.8718 - val_recall_10: 0.8500 Epoch 28/40 23/23 [==============================] - 8s 364ms/step - loss: 0.2435 - accuracy: 0.9136 - precision_10: 0.9244 - recall_10: 0.9025 - val_loss: 0.2806 - val_accuracy: 0.9000 - val_precision_10: 0.8996 - val_recall_10: 0.8958 Epoch 29/40 23/23 [==============================] - 8s 356ms/step - loss: 0.2549 - accuracy: 0.8983 - precision_10: 0.9132 - recall_10: 0.8942 - val_loss: 0.3156 - val_accuracy: 0.8875 - val_precision_10: 0.8979 - val_recall_10: 0.8792 Epoch 30/40 23/23 [==============================] - 9s 391ms/step - loss: 0.2934 - accuracy: 0.8844 - precision_10: 0.8983 - recall_10: 0.8733 - val_loss: 0.4167 - val_accuracy: 0.8417 - val_precision_10: 0.8547 - val_recall_10: 0.8333 Epoch 31/40 23/23 [==============================] - 9s 400ms/step - loss: 0.2823 - accuracy: 0.8983 - precision_10: 0.9077 - recall_10: 0.8900 - val_loss: 0.3616 - val_accuracy: 0.8542 - val_precision_10: 0.8844 - val_recall_10: 0.8292 Epoch 32/40 23/23 [==============================] - 9s 399ms/step - loss: 0.2406 - accuracy: 0.9109 - precision_10: 0.9226 - recall_10: 0.8969 - val_loss: 0.3016 - val_accuracy: 0.8875 - val_precision_10: 0.8866 - val_recall_10: 0.8792 Epoch 33/40 23/23 [==============================] - 8s 355ms/step - loss: 0.2034 - accuracy: 0.9248 - precision_10: 0.9307 - recall_10: 0.9164 - val_loss: 0.3141 - val_accuracy: 0.9000 - val_precision_10: 0.9034 - val_recall_10: 0.8958 Epoch 34/40 23/23 [==============================] - 9s 399ms/step - loss: 0.2069 - accuracy: 0.9206 - precision_10: 0.9317 - recall_10: 0.9123 - val_loss: 0.2949 - val_accuracy: 0.9125 - val_precision_10: 0.9153 - val_recall_10: 0.9000 Epoch 35/40 23/23 [==============================] - 9s 400ms/step - loss: 0.2279 - accuracy: 0.9150 - precision_10: 0.9196 - recall_10: 0.9081 - val_loss: 0.3412 - val_accuracy: 0.9042 - val_precision_10: 0.9072 - val_recall_10: 0.8958 Epoch 36/40 23/23 [==============================] - 9s 407ms/step - loss: 0.2190 - accuracy: 0.9318 - precision_10: 0.9347 - recall_10: 0.9164 - val_loss: 0.3216 - val_accuracy: 0.8875 - val_precision_10: 0.8941 - val_recall_10: 0.8792 Epoch 37/40 23/23 [==============================] - 8s 362ms/step - loss: 0.2352 - accuracy: 0.9220 - precision_10: 0.9355 - recall_10: 0.9095 - val_loss: 0.2962 - val_accuracy: 0.9125 - val_precision_10: 0.9195 - val_recall_10: 0.9042 Epoch 38/40 23/23 [==============================] - 9s 369ms/step - loss: 0.2251 - accuracy: 0.9150 - precision_10: 0.9208 - recall_10: 0.9067 - val_loss: 0.3134 - val_accuracy: 0.8750 - val_precision_10: 0.8894 - val_recall_10: 0.8708 Epoch 39/40 23/23 [==============================] - 9s 414ms/step - loss: 0.2262 - accuracy: 0.9095 - precision_10: 0.9251 - recall_10: 0.8942 - val_loss: 0.3225 - val_accuracy: 0.8750 - val_precision_10: 0.8879 - val_recall_10: 0.8583 Epoch 40/40 23/23 [==============================] - 10s 427ms/step - loss: 0.1681 - accuracy: 0.9387 - precision_10: 0.9423 - recall_10: 0.9331 - val_loss: 0.3451 - val_accuracy: 0.8750 - val_precision_10: 0.8750 - val_recall_10: 0.8750
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history7.history['accuracy'])
plt.plot(history7.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history7.history['precision_10'])
plt.plot(history7.history['val_precision_10'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history7.history['recall_10'])
plt.plot(history7.history['val_recall_10'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model7.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 3s 359ms/step - loss: 0.2866 - accuracy: 0.8708 - precision_10: 0.8932 - recall_10: 0.8708 validation_acc: 87.08 validation_loss: 0.29 validation_precision: 0.89 validation_recall: 0.87
Batch Normalization
from tensorflow.keras.layers import BatchNormalization, Dropout
datagen = ImageDataGenerator(
rescale=1./255)
train_ds = datagen.flow_from_directory(
'./bears/training/',
target_size=(48, 48),
shuffle=True,
batch_size=32)
valid_ds = datagen.flow_from_directory(
'./bears/validation/',
target_size=(48, 48),
shuffle=True,
batch_size=32)
test_ds = datagen.flow_from_directory(
'./bears/test/',
target_size=(48, 48),
shuffle=True,
batch_size=32
)
Found 718 images belonging to 3 classes. Found 240 images belonging to 3 classes. Found 240 images belonging to 3 classes.
model8 = models.Sequential()
model8.add(BatchNormalization())
model8.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model8.add(layers.MaxPooling2D(4, 4) )
model8.add(BatchNormalization())
model8.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model8.add(layers.MaxPooling2D(2, 2) )
model8.add(BatchNormalization())
model8.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model8.add( Flatten() )
model8.add( Dense( 8, activation = 'relu' ) )
model8.add( Dense( 3, activation = 'softmax' ) )
#model8.summary()
model8.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history8 = model8.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 8s 239ms/step - loss: 0.9441 - accuracy: 0.5223 - precision_12: 0.6274 - recall_12: 0.3705 - val_loss: 1.0266 - val_accuracy: 0.5333 - val_precision_12: 0.0000e+00 - val_recall_12: 0.0000e+00 Epoch 2/40 23/23 [==============================] - 5s 225ms/step - loss: 0.5713 - accuracy: 0.7883 - precision_12: 0.8818 - recall_12: 0.6546 - val_loss: 0.9744 - val_accuracy: 0.5917 - val_precision_12: 0.9423 - val_recall_12: 0.2042 Epoch 3/40 23/23 [==============================] - 5s 237ms/step - loss: 0.3867 - accuracy: 0.8677 - precision_12: 0.9163 - recall_12: 0.8231 - val_loss: 1.0665 - val_accuracy: 0.6083 - val_precision_12: 0.8025 - val_recall_12: 0.5250 Epoch 4/40 23/23 [==============================] - 6s 271ms/step - loss: 0.2817 - accuracy: 0.9095 - precision_12: 0.9304 - recall_12: 0.8747 - val_loss: 1.2843 - val_accuracy: 0.5292 - val_precision_12: 0.5604 - val_recall_12: 0.4833 Epoch 5/40 23/23 [==============================] - 6s 274ms/step - loss: 0.2582 - accuracy: 0.8969 - precision_12: 0.9217 - recall_12: 0.8858 - val_loss: 1.4078 - val_accuracy: 0.5750 - val_precision_12: 0.6009 - val_recall_12: 0.5708 Epoch 6/40 23/23 [==============================] - 5s 230ms/step - loss: 0.2091 - accuracy: 0.9276 - precision_12: 0.9428 - recall_12: 0.9178 - val_loss: 1.5227 - val_accuracy: 0.5667 - val_precision_12: 0.5895 - val_recall_12: 0.5625 Epoch 7/40 23/23 [==============================] - 5s 223ms/step - loss: 0.1943 - accuracy: 0.9262 - precision_12: 0.9400 - recall_12: 0.9164 - val_loss: 1.6309 - val_accuracy: 0.6000 - val_precision_12: 0.6008 - val_recall_12: 0.5958 Epoch 8/40 23/23 [==============================] - 6s 265ms/step - loss: 0.1463 - accuracy: 0.9582 - precision_12: 0.9672 - recall_12: 0.9443 - val_loss: 1.6645 - val_accuracy: 0.6125 - val_precision_12: 0.6134 - val_recall_12: 0.6083 Epoch 9/40 23/23 [==============================] - 5s 227ms/step - loss: 0.1333 - accuracy: 0.9540 - precision_12: 0.9674 - recall_12: 0.9499 - val_loss: 1.6195 - val_accuracy: 0.6125 - val_precision_12: 0.6213 - val_recall_12: 0.6083 Epoch 10/40 23/23 [==============================] - 5s 228ms/step - loss: 0.0894 - accuracy: 0.9763 - precision_12: 0.9816 - recall_12: 0.9638 - val_loss: 1.5269 - val_accuracy: 0.6208 - val_precision_12: 0.6255 - val_recall_12: 0.6125 Epoch 11/40 23/23 [==============================] - 5s 228ms/step - loss: 0.0937 - accuracy: 0.9680 - precision_12: 0.9788 - recall_12: 0.9624 - val_loss: 1.4937 - val_accuracy: 0.6250 - val_precision_12: 0.6287 - val_recall_12: 0.6208 Epoch 12/40 23/23 [==============================] - 5s 225ms/step - loss: 0.0694 - accuracy: 0.9819 - precision_12: 0.9859 - recall_12: 0.9735 - val_loss: 1.2565 - val_accuracy: 0.6625 - val_precision_12: 0.6840 - val_recall_12: 0.6583 Epoch 13/40 23/23 [==============================] - 5s 239ms/step - loss: 0.0711 - accuracy: 0.9749 - precision_12: 0.9817 - recall_12: 0.9708 - val_loss: 1.1925 - val_accuracy: 0.6750 - val_precision_12: 0.6766 - val_recall_12: 0.6625 Epoch 14/40 23/23 [==============================] - 6s 261ms/step - loss: 0.0569 - accuracy: 0.9903 - precision_12: 0.9916 - recall_12: 0.9861 - val_loss: 1.0054 - val_accuracy: 0.7375 - val_precision_12: 0.7457 - val_recall_12: 0.7208 Epoch 15/40 23/23 [==============================] - 5s 231ms/step - loss: 0.0501 - accuracy: 0.9889 - precision_12: 0.9930 - recall_12: 0.9819 - val_loss: 0.9031 - val_accuracy: 0.7750 - val_precision_12: 0.7821 - val_recall_12: 0.7625 Epoch 16/40 23/23 [==============================] - 6s 273ms/step - loss: 0.0389 - accuracy: 0.9930 - precision_12: 0.9958 - recall_12: 0.9903 - val_loss: 0.7489 - val_accuracy: 0.8167 - val_precision_12: 0.8170 - val_recall_12: 0.8000 Epoch 17/40 23/23 [==============================] - 5s 223ms/step - loss: 0.0437 - accuracy: 0.9889 - precision_12: 0.9930 - recall_12: 0.9833 - val_loss: 0.7203 - val_accuracy: 0.7958 - val_precision_12: 0.8017 - val_recall_12: 0.7750 Epoch 18/40 23/23 [==============================] - 5s 223ms/step - loss: 0.0415 - accuracy: 0.9889 - precision_12: 0.9916 - recall_12: 0.9889 - val_loss: 0.5785 - val_accuracy: 0.8000 - val_precision_12: 0.8136 - val_recall_12: 0.8000 Epoch 19/40 23/23 [==============================] - 6s 267ms/step - loss: 0.0278 - accuracy: 0.9958 - precision_12: 0.9986 - recall_12: 0.9916 - val_loss: 0.4128 - val_accuracy: 0.8625 - val_precision_12: 0.8613 - val_recall_12: 0.8542 Epoch 20/40 23/23 [==============================] - 6s 244ms/step - loss: 0.0255 - accuracy: 0.9944 - precision_12: 0.9972 - recall_12: 0.9916 - val_loss: 0.3741 - val_accuracy: 0.8875 - val_precision_12: 0.8932 - val_recall_12: 0.8708 Epoch 21/40 23/23 [==============================] - 6s 265ms/step - loss: 0.0218 - accuracy: 0.9972 - precision_12: 0.9986 - recall_12: 0.9958 - val_loss: 0.4373 - val_accuracy: 0.8833 - val_precision_12: 0.8903 - val_recall_12: 0.8792 Epoch 22/40 23/23 [==============================] - 5s 227ms/step - loss: 0.0314 - accuracy: 0.9875 - precision_12: 0.9888 - recall_12: 0.9861 - val_loss: 0.3700 - val_accuracy: 0.9042 - val_precision_12: 0.9076 - val_recall_12: 0.9000 Epoch 23/40 23/23 [==============================] - 5s 233ms/step - loss: 0.0291 - accuracy: 0.9903 - precision_12: 0.9930 - recall_12: 0.9889 - val_loss: 0.4068 - val_accuracy: 0.8792 - val_precision_12: 0.8819 - val_recall_12: 0.8708 Epoch 24/40 23/23 [==============================] - 5s 227ms/step - loss: 0.0213 - accuracy: 0.9916 - precision_12: 0.9944 - recall_12: 0.9916 - val_loss: 0.4368 - val_accuracy: 0.8917 - val_precision_12: 0.8987 - val_recall_12: 0.8875 Epoch 25/40 23/23 [==============================] - 6s 271ms/step - loss: 0.0164 - accuracy: 0.9958 - precision_12: 0.9986 - recall_12: 0.9944 - val_loss: 0.3443 - val_accuracy: 0.9208 - val_precision_12: 0.9208 - val_recall_12: 0.9208 Epoch 26/40 23/23 [==============================] - 7s 300ms/step - loss: 0.0125 - accuracy: 0.9972 - precision_12: 1.0000 - recall_12: 0.9958 - val_loss: 0.3589 - val_accuracy: 0.9125 - val_precision_12: 0.9125 - val_recall_12: 0.9125 Epoch 27/40 23/23 [==============================] - 5s 226ms/step - loss: 0.0114 - accuracy: 0.9986 - precision_12: 1.0000 - recall_12: 0.9958 - val_loss: 0.3599 - val_accuracy: 0.9167 - val_precision_12: 0.9167 - val_recall_12: 0.9167 Epoch 28/40 23/23 [==============================] - 5s 235ms/step - loss: 0.0105 - accuracy: 1.0000 - precision_12: 1.0000 - recall_12: 0.9958 - val_loss: 0.3670 - val_accuracy: 0.9083 - val_precision_12: 0.9160 - val_recall_12: 0.9083
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history8.history['accuracy'])
plt.plot(history8.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history8.history['precision_12'])
plt.plot(history8.history['val_precision_12'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history8.history['recall_12'])
plt.plot(history8.history['val_recall_12'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model8.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 227ms/step - loss: 0.5520 - accuracy: 0.8667 - precision_12: 0.8667 - recall_12: 0.8667 validation_acc: 86.67 validation_loss: 0.55 validation_precision: 0.87 validation_recall: 0.87
BatchNormalization and Dropout
model9 = models.Sequential()
model9.add(BatchNormalization())
model9.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model9.add(layers.MaxPooling2D(4, 4) )
model9.add(Dropout(rate=0.2))
model9.add(BatchNormalization())
model9.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model9.add(layers.MaxPooling2D(2, 2) )
model9.add(Dropout(rate=0.2))
model9.add(BatchNormalization())
model9.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model9.add( Flatten() )
model9.add( Dense( 8, activation = 'relu' ) )
model9.add( Dense( 3, activation = 'softmax' ) )
#model9.summary()
model9.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history9 = model9.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 9s 268ms/step - loss: 1.0042 - accuracy: 0.5125 - precision_13: 0.5860 - recall_13: 0.3370 - val_loss: 1.1479 - val_accuracy: 0.3250 - val_precision_13: 0.7647 - val_recall_13: 0.1083 Epoch 2/40 23/23 [==============================] - 6s 270ms/step - loss: 0.6873 - accuracy: 0.7354 - precision_13: 0.8073 - recall_13: 0.6128 - val_loss: 1.3593 - val_accuracy: 0.3083 - val_precision_13: 0.3136 - val_recall_13: 0.3083 Epoch 3/40 23/23 [==============================] - 5s 231ms/step - loss: 0.4863 - accuracy: 0.8120 - precision_13: 0.8483 - recall_13: 0.7632 - val_loss: 1.6670 - val_accuracy: 0.3083 - val_precision_13: 0.3096 - val_recall_13: 0.3083 Epoch 4/40 23/23 [==============================] - 6s 253ms/step - loss: 0.4306 - accuracy: 0.8287 - precision_13: 0.8546 - recall_13: 0.8106 - val_loss: 1.7823 - val_accuracy: 0.3083 - val_precision_13: 0.3083 - val_recall_13: 0.3083 Epoch 5/40 23/23 [==============================] - 5s 231ms/step - loss: 0.4079 - accuracy: 0.8454 - precision_13: 0.8596 - recall_13: 0.8357 - val_loss: 1.8540 - val_accuracy: 0.3292 - val_precision_13: 0.3263 - val_recall_13: 0.3208 Epoch 6/40 23/23 [==============================] - 5s 231ms/step - loss: 0.3582 - accuracy: 0.8552 - precision_13: 0.8763 - recall_13: 0.8384 - val_loss: 2.0054 - val_accuracy: 0.3125 - val_precision_13: 0.3138 - val_recall_13: 0.3125 Epoch 7/40 23/23 [==============================] - 5s 230ms/step - loss: 0.3352 - accuracy: 0.8802 - precision_13: 0.8932 - recall_13: 0.8621 - val_loss: 1.8412 - val_accuracy: 0.3500 - val_precision_13: 0.3502 - val_recall_13: 0.3458 Epoch 8/40 23/23 [==============================] - 6s 245ms/step - loss: 0.2906 - accuracy: 0.8844 - precision_13: 0.8961 - recall_13: 0.8649 - val_loss: 2.2412 - val_accuracy: 0.3292 - val_precision_13: 0.3264 - val_recall_13: 0.3250 Epoch 9/40 23/23 [==============================] - 7s 319ms/step - loss: 0.3233 - accuracy: 0.8872 - precision_13: 0.8959 - recall_13: 0.8747 - val_loss: 1.8108 - val_accuracy: 0.3833 - val_precision_13: 0.3866 - val_recall_13: 0.3833 Epoch 10/40 23/23 [==============================] - 5s 227ms/step - loss: 0.3109 - accuracy: 0.8830 - precision_13: 0.8913 - recall_13: 0.8677 - val_loss: 1.7448 - val_accuracy: 0.4208 - val_precision_13: 0.4298 - val_recall_13: 0.4208 Epoch 11/40 23/23 [==============================] - 5s 238ms/step - loss: 0.3072 - accuracy: 0.8844 - precision_13: 0.8944 - recall_13: 0.8733 - val_loss: 1.6899 - val_accuracy: 0.4208 - val_precision_13: 0.4219 - val_recall_13: 0.4167 Epoch 12/40 23/23 [==============================] - 6s 273ms/step - loss: 0.2617 - accuracy: 0.8969 - precision_13: 0.9173 - recall_13: 0.8802 - val_loss: 1.5288 - val_accuracy: 0.4833 - val_precision_13: 0.4934 - val_recall_13: 0.4708 Epoch 13/40 23/23 [==============================] - 6s 271ms/step - loss: 0.2286 - accuracy: 0.9178 - precision_13: 0.9289 - recall_13: 0.9095 - val_loss: 1.3710 - val_accuracy: 0.5292 - val_precision_13: 0.5368 - val_recall_13: 0.5167 Epoch 14/40 23/23 [==============================] - 5s 225ms/step - loss: 0.2494 - accuracy: 0.9123 - precision_13: 0.9169 - recall_13: 0.9067 - val_loss: 1.1418 - val_accuracy: 0.6125 - val_precision_13: 0.6245 - val_recall_13: 0.5958 Epoch 15/40 23/23 [==============================] - 7s 291ms/step - loss: 0.2521 - accuracy: 0.8969 - precision_13: 0.9040 - recall_13: 0.8914 - val_loss: 0.9110 - val_accuracy: 0.6750 - val_precision_13: 0.6798 - val_recall_13: 0.6458 Epoch 16/40 23/23 [==============================] - 5s 235ms/step - loss: 0.2195 - accuracy: 0.9220 - precision_13: 0.9303 - recall_13: 0.9109 - val_loss: 1.0418 - val_accuracy: 0.6500 - val_precision_13: 0.6581 - val_recall_13: 0.6417 Epoch 17/40 23/23 [==============================] - 6s 252ms/step - loss: 0.2290 - accuracy: 0.9178 - precision_13: 0.9277 - recall_13: 0.9109 - val_loss: 0.6351 - val_accuracy: 0.7583 - val_precision_13: 0.7743 - val_recall_13: 0.7292 Epoch 18/40 23/23 [==============================] - 5s 226ms/step - loss: 0.1801 - accuracy: 0.9331 - precision_13: 0.9393 - recall_13: 0.9262 - val_loss: 0.6412 - val_accuracy: 0.7625 - val_precision_13: 0.7716 - val_recall_13: 0.7458 Epoch 19/40 23/23 [==============================] - 5s 224ms/step - loss: 0.2274 - accuracy: 0.9192 - precision_13: 0.9234 - recall_13: 0.9067 - val_loss: 0.5684 - val_accuracy: 0.7917 - val_precision_13: 0.7915 - val_recall_13: 0.7750 Epoch 20/40 23/23 [==============================] - 6s 268ms/step - loss: 0.2116 - accuracy: 0.9290 - precision_13: 0.9361 - recall_13: 0.9178 - val_loss: 0.4921 - val_accuracy: 0.8250 - val_precision_13: 0.8369 - val_recall_13: 0.8125 Epoch 21/40 23/23 [==============================] - 5s 227ms/step - loss: 0.1832 - accuracy: 0.9290 - precision_13: 0.9392 - recall_13: 0.9248 - val_loss: 0.4802 - val_accuracy: 0.8333 - val_precision_13: 0.8498 - val_recall_13: 0.8250 Epoch 22/40 23/23 [==============================] - 5s 223ms/step - loss: 0.1891 - accuracy: 0.9373 - precision_13: 0.9463 - recall_13: 0.9331 - val_loss: 0.6082 - val_accuracy: 0.7875 - val_precision_13: 0.8008 - val_recall_13: 0.7875 Epoch 23/40 23/23 [==============================] - 6s 257ms/step - loss: 0.1737 - accuracy: 0.9429 - precision_13: 0.9453 - recall_13: 0.9387 - val_loss: 0.4336 - val_accuracy: 0.8500 - val_precision_13: 0.8670 - val_recall_13: 0.8417 Epoch 24/40 23/23 [==============================] - 5s 232ms/step - loss: 0.1806 - accuracy: 0.9290 - precision_13: 0.9301 - recall_13: 0.9262 - val_loss: 0.5655 - val_accuracy: 0.8167 - val_precision_13: 0.8213 - val_recall_13: 0.8042 Epoch 25/40 23/23 [==============================] - 6s 262ms/step - loss: 0.1896 - accuracy: 0.9331 - precision_13: 0.9364 - recall_13: 0.9234 - val_loss: 0.6043 - val_accuracy: 0.7917 - val_precision_13: 0.8034 - val_recall_13: 0.7833 Epoch 26/40 23/23 [==============================] - 5s 225ms/step - loss: 0.1755 - accuracy: 0.9290 - precision_13: 0.9433 - recall_13: 0.9276 - val_loss: 0.4188 - val_accuracy: 0.8625 - val_precision_13: 0.8803 - val_recall_13: 0.8583 Epoch 27/40 23/23 [==============================] - 6s 272ms/step - loss: 0.1528 - accuracy: 0.9443 - precision_13: 0.9494 - recall_13: 0.9415 - val_loss: 0.5206 - val_accuracy: 0.8250 - val_precision_13: 0.8405 - val_recall_13: 0.8125 Epoch 28/40 23/23 [==============================] - 6s 286ms/step - loss: 0.1516 - accuracy: 0.9499 - precision_13: 0.9562 - recall_13: 0.9415 - val_loss: 0.4109 - val_accuracy: 0.8667 - val_precision_13: 0.8761 - val_recall_13: 0.8542 Epoch 29/40 23/23 [==============================] - 5s 229ms/step - loss: 0.1617 - accuracy: 0.9387 - precision_13: 0.9437 - recall_13: 0.9345 - val_loss: 0.3815 - val_accuracy: 0.8750 - val_precision_13: 0.8824 - val_recall_13: 0.8750 Epoch 30/40 23/23 [==============================] - 6s 252ms/step - loss: 0.1620 - accuracy: 0.9387 - precision_13: 0.9437 - recall_13: 0.9331 - val_loss: 0.3790 - val_accuracy: 0.8583 - val_precision_13: 0.8729 - val_recall_13: 0.8583 Epoch 31/40 23/23 [==============================] - 5s 225ms/step - loss: 0.1310 - accuracy: 0.9526 - precision_13: 0.9552 - recall_13: 0.9499 - val_loss: 0.3599 - val_accuracy: 0.8708 - val_precision_13: 0.8819 - val_recall_13: 0.8708 Epoch 32/40 23/23 [==============================] - 6s 267ms/step - loss: 0.1418 - accuracy: 0.9485 - precision_13: 0.9508 - recall_13: 0.9429 - val_loss: 0.3770 - val_accuracy: 0.8667 - val_precision_13: 0.8734 - val_recall_13: 0.8625 Epoch 33/40 23/23 [==============================] - 5s 230ms/step - loss: 0.1496 - accuracy: 0.9443 - precision_13: 0.9549 - recall_13: 0.9429 - val_loss: 0.4178 - val_accuracy: 0.8625 - val_precision_13: 0.8729 - val_recall_13: 0.8583 Epoch 34/40 23/23 [==============================] - 5s 225ms/step - loss: 0.1236 - accuracy: 0.9526 - precision_13: 0.9565 - recall_13: 0.9485 - val_loss: 0.4206 - val_accuracy: 0.8708 - val_precision_13: 0.8782 - val_recall_13: 0.8708 Epoch 35/40 23/23 [==============================] - 6s 270ms/step - loss: 0.1062 - accuracy: 0.9666 - precision_13: 0.9691 - recall_13: 0.9624 - val_loss: 0.3430 - val_accuracy: 0.8875 - val_precision_13: 0.8983 - val_recall_13: 0.8833 Epoch 36/40 23/23 [==============================] - 6s 286ms/step - loss: 0.1250 - accuracy: 0.9568 - precision_13: 0.9592 - recall_13: 0.9485 - val_loss: 0.3826 - val_accuracy: 0.8792 - val_precision_13: 0.8903 - val_recall_13: 0.8792 Epoch 37/40 23/23 [==============================] - 6s 278ms/step - loss: 0.1068 - accuracy: 0.9596 - precision_13: 0.9621 - recall_13: 0.9540 - val_loss: 0.4430 - val_accuracy: 0.8750 - val_precision_13: 0.8861 - val_recall_13: 0.8750 Epoch 38/40 23/23 [==============================] - 6s 265ms/step - loss: 0.1101 - accuracy: 0.9652 - precision_13: 0.9651 - recall_13: 0.9624 - val_loss: 0.4221 - val_accuracy: 0.8833 - val_precision_13: 0.8841 - val_recall_13: 0.8583 Epoch 39/40 23/23 [==============================] - 5s 228ms/step - loss: 0.0955 - accuracy: 0.9680 - precision_13: 0.9732 - recall_13: 0.9610 - val_loss: 0.5375 - val_accuracy: 0.8375 - val_precision_13: 0.8475 - val_recall_13: 0.8333 Epoch 40/40 23/23 [==============================] - 6s 265ms/step - loss: 0.1159 - accuracy: 0.9568 - precision_13: 0.9581 - recall_13: 0.9554 - val_loss: 0.3220 - val_accuracy: 0.9042 - val_precision_13: 0.9072 - val_recall_13: 0.8958
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history9.history['accuracy'])
plt.plot(history9.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history9.history['precision_13'])
plt.plot(history9.history['val_precision_13'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history9.history['recall_13'])
plt.plot(history9.history['val_recall_13'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model9.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 1s 150ms/step - loss: 0.3654 - accuracy: 0.8625 - precision_13: 0.8692 - recall_13: 0.8583 validation_acc: 86.25 validation_loss: 0.37 validation_precision: 0.87 validation_recall: 0.86
Batch Normalization, Dropout, and L2 Regularization
model10 = models.Sequential()
model10.add(BatchNormalization())
model10.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', kernel_regularizer="l2", input_shape = train_ds.image_shape ) )
model10.add(layers.MaxPooling2D(4, 4) )
model10.add(Dropout(rate=0.2))
model10.add(BatchNormalization())
model10.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu', kernel_regularizer="l2" ) )
model10.add(layers.MaxPooling2D(2, 2) )
model10.add(Dropout(rate=0.2))
model10.add(BatchNormalization())
model10.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu', kernel_regularizer="l2" ) )
model10.add( Flatten() )
model10.add( Dense( 8, activation = 'relu' ) )
model10.add( Dense( 3, activation = 'softmax' ) )
#model10.summary()
model10.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history10 = model10.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 10s 268ms/step - loss: 1.4167 - accuracy: 0.4220 - precision_14: 0.4431 - recall_14: 0.2006 - val_loss: 1.4548 - val_accuracy: 0.4542 - val_precision_14: 0.0000e+00 - val_recall_14: 0.0000e+00 Epoch 2/40 23/23 [==============================] - 6s 272ms/step - loss: 1.1355 - accuracy: 0.6699 - precision_14: 0.7740 - recall_14: 0.4721 - val_loss: 1.4323 - val_accuracy: 0.3208 - val_precision_14: 0.0000e+00 - val_recall_14: 0.0000e+00 Epoch 3/40 23/23 [==============================] - 7s 292ms/step - loss: 0.9212 - accuracy: 0.8022 - precision_14: 0.8510 - recall_14: 0.7159 - val_loss: 1.3951 - val_accuracy: 0.3417 - val_precision_14: 0.7386 - val_recall_14: 0.2708 Epoch 4/40 23/23 [==============================] - 5s 226ms/step - loss: 0.7713 - accuracy: 0.8468 - precision_14: 0.8778 - recall_14: 0.8106 - val_loss: 1.4383 - val_accuracy: 0.3208 - val_precision_14: 0.3627 - val_recall_14: 0.3083 Epoch 5/40 23/23 [==============================] - 5s 226ms/step - loss: 0.7199 - accuracy: 0.8579 - precision_14: 0.8721 - recall_14: 0.8357 - val_loss: 1.5353 - val_accuracy: 0.3208 - val_precision_14: 0.3260 - val_recall_14: 0.3083 Epoch 6/40 23/23 [==============================] - 7s 292ms/step - loss: 0.6551 - accuracy: 0.8621 - precision_14: 0.8887 - recall_14: 0.8454 - val_loss: 1.5146 - val_accuracy: 0.3667 - val_precision_14: 0.3853 - val_recall_14: 0.3500 Epoch 7/40 23/23 [==============================] - 6s 277ms/step - loss: 0.6161 - accuracy: 0.8830 - precision_14: 0.9016 - recall_14: 0.8677 - val_loss: 1.5988 - val_accuracy: 0.3542 - val_precision_14: 0.3624 - val_recall_14: 0.3458 Epoch 8/40 23/23 [==============================] - 6s 250ms/step - loss: 0.5888 - accuracy: 0.8928 - precision_14: 0.9130 - recall_14: 0.8774 - val_loss: 1.7146 - val_accuracy: 0.3583 - val_precision_14: 0.3596 - val_recall_14: 0.3417 Epoch 9/40 23/23 [==============================] - 7s 318ms/step - loss: 0.5462 - accuracy: 0.9011 - precision_14: 0.9147 - recall_14: 0.8955 - val_loss: 1.6192 - val_accuracy: 0.3958 - val_precision_14: 0.4105 - val_recall_14: 0.3917 Epoch 10/40 23/23 [==============================] - 5s 230ms/step - loss: 0.5460 - accuracy: 0.8788 - precision_14: 0.8951 - recall_14: 0.8677 - val_loss: 1.5030 - val_accuracy: 0.4375 - val_precision_14: 0.4513 - val_recall_14: 0.4250 Epoch 11/40 23/23 [==============================] - 6s 261ms/step - loss: 0.5238 - accuracy: 0.8969 - precision_14: 0.9127 - recall_14: 0.8886 - val_loss: 1.4150 - val_accuracy: 0.4958 - val_precision_14: 0.5022 - val_recall_14: 0.4750 Epoch 12/40 23/23 [==============================] - 5s 229ms/step - loss: 0.4984 - accuracy: 0.9109 - precision_14: 0.9226 - recall_14: 0.8969 - val_loss: 1.3288 - val_accuracy: 0.5458 - val_precision_14: 0.5628 - val_recall_14: 0.5417 Epoch 13/40 23/23 [==============================] - 6s 266ms/step - loss: 0.4864 - accuracy: 0.9067 - precision_14: 0.9137 - recall_14: 0.8997 - val_loss: 1.2457 - val_accuracy: 0.5667 - val_precision_14: 0.5696 - val_recall_14: 0.5458 Epoch 14/40 23/23 [==============================] - 6s 276ms/step - loss: 0.4455 - accuracy: 0.9178 - precision_14: 0.9329 - recall_14: 0.9095 - val_loss: 1.2140 - val_accuracy: 0.5792 - val_precision_14: 0.5982 - val_recall_14: 0.5583 Epoch 15/40 23/23 [==============================] - 5s 229ms/step - loss: 0.4291 - accuracy: 0.9248 - precision_14: 0.9437 - recall_14: 0.9109 - val_loss: 1.1608 - val_accuracy: 0.6000 - val_precision_14: 0.6267 - val_recall_14: 0.5875 Epoch 16/40 23/23 [==============================] - 6s 272ms/step - loss: 0.3960 - accuracy: 0.9304 - precision_14: 0.9379 - recall_14: 0.9248 - val_loss: 0.9980 - val_accuracy: 0.7000 - val_precision_14: 0.7149 - val_recall_14: 0.6792 Epoch 17/40 23/23 [==============================] - 6s 272ms/step - loss: 0.4125 - accuracy: 0.9220 - precision_14: 0.9315 - recall_14: 0.9095 - val_loss: 0.9887 - val_accuracy: 0.6792 - val_precision_14: 0.6991 - val_recall_14: 0.6583 Epoch 18/40 23/23 [==============================] - 6s 242ms/step - loss: 0.3956 - accuracy: 0.9234 - precision_14: 0.9293 - recall_14: 0.9150 - val_loss: 0.9025 - val_accuracy: 0.7042 - val_precision_14: 0.7313 - val_recall_14: 0.6917 Epoch 19/40 23/23 [==============================] - 6s 257ms/step - loss: 0.3529 - accuracy: 0.9443 - precision_14: 0.9532 - recall_14: 0.9359 - val_loss: 0.7821 - val_accuracy: 0.7625 - val_precision_14: 0.7759 - val_recall_14: 0.7500 Epoch 20/40 23/23 [==============================] - 5s 229ms/step - loss: 0.3562 - accuracy: 0.9318 - precision_14: 0.9407 - recall_14: 0.9276 - val_loss: 0.7986 - val_accuracy: 0.7625 - val_precision_14: 0.7759 - val_recall_14: 0.7500 Epoch 21/40 23/23 [==============================] - 6s 271ms/step - loss: 0.3226 - accuracy: 0.9499 - precision_14: 0.9589 - recall_14: 0.9415 - val_loss: 0.6832 - val_accuracy: 0.7958 - val_precision_14: 0.8085 - val_recall_14: 0.7917 Epoch 22/40 23/23 [==============================] - 6s 272ms/step - loss: 0.3280 - accuracy: 0.9401 - precision_14: 0.9434 - recall_14: 0.9290 - val_loss: 0.6698 - val_accuracy: 0.7958 - val_precision_14: 0.8069 - val_recall_14: 0.7833 Epoch 23/40 23/23 [==============================] - 5s 235ms/step - loss: 0.3291 - accuracy: 0.9345 - precision_14: 0.9448 - recall_14: 0.9290 - val_loss: 0.7394 - val_accuracy: 0.7542 - val_precision_14: 0.7686 - val_recall_14: 0.7333 Epoch 24/40 23/23 [==============================] - 7s 294ms/step - loss: 0.3196 - accuracy: 0.9485 - precision_14: 0.9549 - recall_14: 0.9429 - val_loss: 0.6839 - val_accuracy: 0.8083 - val_precision_14: 0.8093 - val_recall_14: 0.7958 Epoch 25/40 23/23 [==============================] - 5s 232ms/step - loss: 0.2882 - accuracy: 0.9499 - precision_14: 0.9522 - recall_14: 0.9443 - val_loss: 0.6459 - val_accuracy: 0.8000 - val_precision_14: 0.8093 - val_recall_14: 0.7958 Epoch 26/40 23/23 [==============================] - 6s 277ms/step - loss: 0.2703 - accuracy: 0.9582 - precision_14: 0.9635 - recall_14: 0.9554 - val_loss: 0.5214 - val_accuracy: 0.8500 - val_precision_14: 0.8536 - val_recall_14: 0.8500 Epoch 27/40 23/23 [==============================] - 5s 228ms/step - loss: 0.2790 - accuracy: 0.9526 - precision_14: 0.9590 - recall_14: 0.9457 - val_loss: 0.6013 - val_accuracy: 0.8042 - val_precision_14: 0.8067 - val_recall_14: 0.8000 Epoch 28/40 23/23 [==============================] - 5s 228ms/step - loss: 0.2899 - accuracy: 0.9526 - precision_14: 0.9552 - recall_14: 0.9499 - val_loss: 0.6835 - val_accuracy: 0.7875 - val_precision_14: 0.7941 - val_recall_14: 0.7875 Epoch 29/40 23/23 [==============================] - 6s 269ms/step - loss: 0.2519 - accuracy: 0.9582 - precision_14: 0.9635 - recall_14: 0.9568 - val_loss: 0.4375 - val_accuracy: 0.8792 - val_precision_14: 0.8828 - val_recall_14: 0.8792 Epoch 30/40 23/23 [==============================] - 5s 228ms/step - loss: 0.2569 - accuracy: 0.9513 - precision_14: 0.9550 - recall_14: 0.9457 - val_loss: 0.5259 - val_accuracy: 0.8542 - val_precision_14: 0.8681 - val_recall_14: 0.8500 Epoch 31/40 23/23 [==============================] - 6s 272ms/step - loss: 0.2328 - accuracy: 0.9708 - precision_14: 0.9721 - recall_14: 0.9708 - val_loss: 0.4067 - val_accuracy: 0.8958 - val_precision_14: 0.8996 - val_recall_14: 0.8958 Epoch 32/40 23/23 [==============================] - 5s 227ms/step - loss: 0.2173 - accuracy: 0.9721 - precision_14: 0.9735 - recall_14: 0.9708 - val_loss: 0.4866 - val_accuracy: 0.8708 - val_precision_14: 0.8708 - val_recall_14: 0.8708 Epoch 33/40 23/23 [==============================] - 5s 231ms/step - loss: 0.2320 - accuracy: 0.9680 - precision_14: 0.9693 - recall_14: 0.9680 - val_loss: 0.4169 - val_accuracy: 0.8792 - val_precision_14: 0.8828 - val_recall_14: 0.8792 Epoch 34/40 23/23 [==============================] - 6s 268ms/step - loss: 0.2139 - accuracy: 0.9666 - precision_14: 0.9719 - recall_14: 0.9652 - val_loss: 0.4137 - val_accuracy: 0.8917 - val_precision_14: 0.8954 - val_recall_14: 0.8917 Epoch 35/40 23/23 [==============================] - 6s 246ms/step - loss: 0.2019 - accuracy: 0.9763 - precision_14: 0.9777 - recall_14: 0.9749 - val_loss: 0.4068 - val_accuracy: 0.8875 - val_precision_14: 0.8912 - val_recall_14: 0.8875 Epoch 36/40 23/23 [==============================] - 5s 230ms/step - loss: 0.2189 - accuracy: 0.9610 - precision_14: 0.9636 - recall_14: 0.9582 - val_loss: 0.3855 - val_accuracy: 0.9000 - val_precision_14: 0.9038 - val_recall_14: 0.9000 Epoch 37/40 23/23 [==============================] - 6s 270ms/step - loss: 0.2159 - accuracy: 0.9652 - precision_14: 0.9665 - recall_14: 0.9652 - val_loss: 0.4205 - val_accuracy: 0.9000 - val_precision_14: 0.9000 - val_recall_14: 0.9000 Epoch 38/40 23/23 [==============================] - 5s 232ms/step - loss: 0.1949 - accuracy: 0.9721 - precision_14: 0.9762 - recall_14: 0.9721 - val_loss: 0.4439 - val_accuracy: 0.8708 - val_precision_14: 0.8745 - val_recall_14: 0.8708 Epoch 39/40 23/23 [==============================] - 6s 274ms/step - loss: 0.1853 - accuracy: 0.9805 - precision_14: 0.9805 - recall_14: 0.9791 - val_loss: 0.3833 - val_accuracy: 0.9000 - val_precision_14: 0.9038 - val_recall_14: 0.9000 Epoch 40/40 23/23 [==============================] - 5s 229ms/step - loss: 0.1851 - accuracy: 0.9763 - precision_14: 0.9790 - recall_14: 0.9749 - val_loss: 0.3296 - val_accuracy: 0.9292 - val_precision_14: 0.9325 - val_recall_14: 0.9208
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(history10.history['accuracy'])
plt.plot(history10.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(history10.history['precision_14'])
plt.plot(history10.history['val_precision_14'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(history10.history['recall_14'])
plt.plot(history10.history['val_recall_14'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = model10.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 1s 147ms/step - loss: 0.3786 - accuracy: 0.8958 - precision_14: 0.9025 - recall_14: 0.8875 validation_acc: 89.58 validation_loss: 0.38 validation_precision: 0.90 validation_recall: 0.89
from tensorflow.keras.applications import ResNet50, DenseNet121
train_ds = datagen.flow_from_directory(
'./bears/training/',
target_size=(224, 224),
shuffle=True,
batch_size=32, class_mode = 'categorical')
valid_ds = datagen.flow_from_directory(
'./bears/validation/',
target_size=(224, 224),
shuffle=True,
batch_size=32, class_mode = 'categorical')
test_ds = datagen.flow_from_directory(
'./bears/test/',
target_size=(224, 224),
shuffle=True,
batch_size=32, class_mode = 'categorical')
Found 718 images belonging to 3 classes. Found 240 images belonging to 3 classes. Found 240 images belonging to 3 classes.
ResNet50
resnet50 = ResNet50(weights='imagenet', include_top=False, input_shape=(224,224,3))
resnet50.summary()
Model: "resnet50"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
input_2 (InputLayer) [(None, 224, 224, 3 0 []
)]
conv1_pad (ZeroPadding2D) (None, 230, 230, 3) 0 ['input_2[0][0]']
conv1_conv (Conv2D) (None, 112, 112, 64 9472 ['conv1_pad[0][0]']
)
conv1_bn (BatchNormalization) (None, 112, 112, 64 256 ['conv1_conv[0][0]']
)
conv1_relu (Activation) (None, 112, 112, 64 0 ['conv1_bn[0][0]']
)
pool1_pad (ZeroPadding2D) (None, 114, 114, 64 0 ['conv1_relu[0][0]']
)
pool1_pool (MaxPooling2D) (None, 56, 56, 64) 0 ['pool1_pad[0][0]']
conv2_block1_1_conv (Conv2D) (None, 56, 56, 64) 4160 ['pool1_pool[0][0]']
conv2_block1_1_bn (BatchNormal (None, 56, 56, 64) 256 ['conv2_block1_1_conv[0][0]']
ization)
conv2_block1_1_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block1_1_bn[0][0]']
n)
conv2_block1_2_conv (Conv2D) (None, 56, 56, 64) 36928 ['conv2_block1_1_relu[0][0]']
conv2_block1_2_bn (BatchNormal (None, 56, 56, 64) 256 ['conv2_block1_2_conv[0][0]']
ization)
conv2_block1_2_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block1_2_bn[0][0]']
n)
conv2_block1_0_conv (Conv2D) (None, 56, 56, 256) 16640 ['pool1_pool[0][0]']
conv2_block1_3_conv (Conv2D) (None, 56, 56, 256) 16640 ['conv2_block1_2_relu[0][0]']
conv2_block1_0_bn (BatchNormal (None, 56, 56, 256) 1024 ['conv2_block1_0_conv[0][0]']
ization)
conv2_block1_3_bn (BatchNormal (None, 56, 56, 256) 1024 ['conv2_block1_3_conv[0][0]']
ization)
conv2_block1_add (Add) (None, 56, 56, 256) 0 ['conv2_block1_0_bn[0][0]',
'conv2_block1_3_bn[0][0]']
conv2_block1_out (Activation) (None, 56, 56, 256) 0 ['conv2_block1_add[0][0]']
conv2_block2_1_conv (Conv2D) (None, 56, 56, 64) 16448 ['conv2_block1_out[0][0]']
conv2_block2_1_bn (BatchNormal (None, 56, 56, 64) 256 ['conv2_block2_1_conv[0][0]']
ization)
conv2_block2_1_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block2_1_bn[0][0]']
n)
conv2_block2_2_conv (Conv2D) (None, 56, 56, 64) 36928 ['conv2_block2_1_relu[0][0]']
conv2_block2_2_bn (BatchNormal (None, 56, 56, 64) 256 ['conv2_block2_2_conv[0][0]']
ization)
conv2_block2_2_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block2_2_bn[0][0]']
n)
conv2_block2_3_conv (Conv2D) (None, 56, 56, 256) 16640 ['conv2_block2_2_relu[0][0]']
conv2_block2_3_bn (BatchNormal (None, 56, 56, 256) 1024 ['conv2_block2_3_conv[0][0]']
ization)
conv2_block2_add (Add) (None, 56, 56, 256) 0 ['conv2_block1_out[0][0]',
'conv2_block2_3_bn[0][0]']
conv2_block2_out (Activation) (None, 56, 56, 256) 0 ['conv2_block2_add[0][0]']
conv2_block3_1_conv (Conv2D) (None, 56, 56, 64) 16448 ['conv2_block2_out[0][0]']
conv2_block3_1_bn (BatchNormal (None, 56, 56, 64) 256 ['conv2_block3_1_conv[0][0]']
ization)
conv2_block3_1_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block3_1_bn[0][0]']
n)
conv2_block3_2_conv (Conv2D) (None, 56, 56, 64) 36928 ['conv2_block3_1_relu[0][0]']
conv2_block3_2_bn (BatchNormal (None, 56, 56, 64) 256 ['conv2_block3_2_conv[0][0]']
ization)
conv2_block3_2_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block3_2_bn[0][0]']
n)
conv2_block3_3_conv (Conv2D) (None, 56, 56, 256) 16640 ['conv2_block3_2_relu[0][0]']
conv2_block3_3_bn (BatchNormal (None, 56, 56, 256) 1024 ['conv2_block3_3_conv[0][0]']
ization)
conv2_block3_add (Add) (None, 56, 56, 256) 0 ['conv2_block2_out[0][0]',
'conv2_block3_3_bn[0][0]']
conv2_block3_out (Activation) (None, 56, 56, 256) 0 ['conv2_block3_add[0][0]']
conv3_block1_1_conv (Conv2D) (None, 28, 28, 128) 32896 ['conv2_block3_out[0][0]']
conv3_block1_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block1_1_conv[0][0]']
ization)
conv3_block1_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block1_1_bn[0][0]']
n)
conv3_block1_2_conv (Conv2D) (None, 28, 28, 128) 147584 ['conv3_block1_1_relu[0][0]']
conv3_block1_2_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block1_2_conv[0][0]']
ization)
conv3_block1_2_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block1_2_bn[0][0]']
n)
conv3_block1_0_conv (Conv2D) (None, 28, 28, 512) 131584 ['conv2_block3_out[0][0]']
conv3_block1_3_conv (Conv2D) (None, 28, 28, 512) 66048 ['conv3_block1_2_relu[0][0]']
conv3_block1_0_bn (BatchNormal (None, 28, 28, 512) 2048 ['conv3_block1_0_conv[0][0]']
ization)
conv3_block1_3_bn (BatchNormal (None, 28, 28, 512) 2048 ['conv3_block1_3_conv[0][0]']
ization)
conv3_block1_add (Add) (None, 28, 28, 512) 0 ['conv3_block1_0_bn[0][0]',
'conv3_block1_3_bn[0][0]']
conv3_block1_out (Activation) (None, 28, 28, 512) 0 ['conv3_block1_add[0][0]']
conv3_block2_1_conv (Conv2D) (None, 28, 28, 128) 65664 ['conv3_block1_out[0][0]']
conv3_block2_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block2_1_conv[0][0]']
ization)
conv3_block2_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block2_1_bn[0][0]']
n)
conv3_block2_2_conv (Conv2D) (None, 28, 28, 128) 147584 ['conv3_block2_1_relu[0][0]']
conv3_block2_2_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block2_2_conv[0][0]']
ization)
conv3_block2_2_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block2_2_bn[0][0]']
n)
conv3_block2_3_conv (Conv2D) (None, 28, 28, 512) 66048 ['conv3_block2_2_relu[0][0]']
conv3_block2_3_bn (BatchNormal (None, 28, 28, 512) 2048 ['conv3_block2_3_conv[0][0]']
ization)
conv3_block2_add (Add) (None, 28, 28, 512) 0 ['conv3_block1_out[0][0]',
'conv3_block2_3_bn[0][0]']
conv3_block2_out (Activation) (None, 28, 28, 512) 0 ['conv3_block2_add[0][0]']
conv3_block3_1_conv (Conv2D) (None, 28, 28, 128) 65664 ['conv3_block2_out[0][0]']
conv3_block3_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block3_1_conv[0][0]']
ization)
conv3_block3_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block3_1_bn[0][0]']
n)
conv3_block3_2_conv (Conv2D) (None, 28, 28, 128) 147584 ['conv3_block3_1_relu[0][0]']
conv3_block3_2_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block3_2_conv[0][0]']
ization)
conv3_block3_2_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block3_2_bn[0][0]']
n)
conv3_block3_3_conv (Conv2D) (None, 28, 28, 512) 66048 ['conv3_block3_2_relu[0][0]']
conv3_block3_3_bn (BatchNormal (None, 28, 28, 512) 2048 ['conv3_block3_3_conv[0][0]']
ization)
conv3_block3_add (Add) (None, 28, 28, 512) 0 ['conv3_block2_out[0][0]',
'conv3_block3_3_bn[0][0]']
conv3_block3_out (Activation) (None, 28, 28, 512) 0 ['conv3_block3_add[0][0]']
conv3_block4_1_conv (Conv2D) (None, 28, 28, 128) 65664 ['conv3_block3_out[0][0]']
conv3_block4_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block4_1_conv[0][0]']
ization)
conv3_block4_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block4_1_bn[0][0]']
n)
conv3_block4_2_conv (Conv2D) (None, 28, 28, 128) 147584 ['conv3_block4_1_relu[0][0]']
conv3_block4_2_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block4_2_conv[0][0]']
ization)
conv3_block4_2_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block4_2_bn[0][0]']
n)
conv3_block4_3_conv (Conv2D) (None, 28, 28, 512) 66048 ['conv3_block4_2_relu[0][0]']
conv3_block4_3_bn (BatchNormal (None, 28, 28, 512) 2048 ['conv3_block4_3_conv[0][0]']
ization)
conv3_block4_add (Add) (None, 28, 28, 512) 0 ['conv3_block3_out[0][0]',
'conv3_block4_3_bn[0][0]']
conv3_block4_out (Activation) (None, 28, 28, 512) 0 ['conv3_block4_add[0][0]']
conv4_block1_1_conv (Conv2D) (None, 14, 14, 256) 131328 ['conv3_block4_out[0][0]']
conv4_block1_1_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block1_1_conv[0][0]']
ization)
conv4_block1_1_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block1_1_bn[0][0]']
n)
conv4_block1_2_conv (Conv2D) (None, 14, 14, 256) 590080 ['conv4_block1_1_relu[0][0]']
conv4_block1_2_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block1_2_conv[0][0]']
ization)
conv4_block1_2_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block1_2_bn[0][0]']
n)
conv4_block1_0_conv (Conv2D) (None, 14, 14, 1024 525312 ['conv3_block4_out[0][0]']
)
conv4_block1_3_conv (Conv2D) (None, 14, 14, 1024 263168 ['conv4_block1_2_relu[0][0]']
)
conv4_block1_0_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block1_0_conv[0][0]']
ization) )
conv4_block1_3_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block1_3_conv[0][0]']
ization) )
conv4_block1_add (Add) (None, 14, 14, 1024 0 ['conv4_block1_0_bn[0][0]',
) 'conv4_block1_3_bn[0][0]']
conv4_block1_out (Activation) (None, 14, 14, 1024 0 ['conv4_block1_add[0][0]']
)
conv4_block2_1_conv (Conv2D) (None, 14, 14, 256) 262400 ['conv4_block1_out[0][0]']
conv4_block2_1_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block2_1_conv[0][0]']
ization)
conv4_block2_1_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block2_1_bn[0][0]']
n)
conv4_block2_2_conv (Conv2D) (None, 14, 14, 256) 590080 ['conv4_block2_1_relu[0][0]']
conv4_block2_2_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block2_2_conv[0][0]']
ization)
conv4_block2_2_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block2_2_bn[0][0]']
n)
conv4_block2_3_conv (Conv2D) (None, 14, 14, 1024 263168 ['conv4_block2_2_relu[0][0]']
)
conv4_block2_3_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block2_3_conv[0][0]']
ization) )
conv4_block2_add (Add) (None, 14, 14, 1024 0 ['conv4_block1_out[0][0]',
) 'conv4_block2_3_bn[0][0]']
conv4_block2_out (Activation) (None, 14, 14, 1024 0 ['conv4_block2_add[0][0]']
)
conv4_block3_1_conv (Conv2D) (None, 14, 14, 256) 262400 ['conv4_block2_out[0][0]']
conv4_block3_1_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block3_1_conv[0][0]']
ization)
conv4_block3_1_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block3_1_bn[0][0]']
n)
conv4_block3_2_conv (Conv2D) (None, 14, 14, 256) 590080 ['conv4_block3_1_relu[0][0]']
conv4_block3_2_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block3_2_conv[0][0]']
ization)
conv4_block3_2_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block3_2_bn[0][0]']
n)
conv4_block3_3_conv (Conv2D) (None, 14, 14, 1024 263168 ['conv4_block3_2_relu[0][0]']
)
conv4_block3_3_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block3_3_conv[0][0]']
ization) )
conv4_block3_add (Add) (None, 14, 14, 1024 0 ['conv4_block2_out[0][0]',
) 'conv4_block3_3_bn[0][0]']
conv4_block3_out (Activation) (None, 14, 14, 1024 0 ['conv4_block3_add[0][0]']
)
conv4_block4_1_conv (Conv2D) (None, 14, 14, 256) 262400 ['conv4_block3_out[0][0]']
conv4_block4_1_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block4_1_conv[0][0]']
ization)
conv4_block4_1_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block4_1_bn[0][0]']
n)
conv4_block4_2_conv (Conv2D) (None, 14, 14, 256) 590080 ['conv4_block4_1_relu[0][0]']
conv4_block4_2_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block4_2_conv[0][0]']
ization)
conv4_block4_2_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block4_2_bn[0][0]']
n)
conv4_block4_3_conv (Conv2D) (None, 14, 14, 1024 263168 ['conv4_block4_2_relu[0][0]']
)
conv4_block4_3_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block4_3_conv[0][0]']
ization) )
conv4_block4_add (Add) (None, 14, 14, 1024 0 ['conv4_block3_out[0][0]',
) 'conv4_block4_3_bn[0][0]']
conv4_block4_out (Activation) (None, 14, 14, 1024 0 ['conv4_block4_add[0][0]']
)
conv4_block5_1_conv (Conv2D) (None, 14, 14, 256) 262400 ['conv4_block4_out[0][0]']
conv4_block5_1_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block5_1_conv[0][0]']
ization)
conv4_block5_1_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block5_1_bn[0][0]']
n)
conv4_block5_2_conv (Conv2D) (None, 14, 14, 256) 590080 ['conv4_block5_1_relu[0][0]']
conv4_block5_2_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block5_2_conv[0][0]']
ization)
conv4_block5_2_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block5_2_bn[0][0]']
n)
conv4_block5_3_conv (Conv2D) (None, 14, 14, 1024 263168 ['conv4_block5_2_relu[0][0]']
)
conv4_block5_3_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block5_3_conv[0][0]']
ization) )
conv4_block5_add (Add) (None, 14, 14, 1024 0 ['conv4_block4_out[0][0]',
) 'conv4_block5_3_bn[0][0]']
conv4_block5_out (Activation) (None, 14, 14, 1024 0 ['conv4_block5_add[0][0]']
)
conv4_block6_1_conv (Conv2D) (None, 14, 14, 256) 262400 ['conv4_block5_out[0][0]']
conv4_block6_1_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block6_1_conv[0][0]']
ization)
conv4_block6_1_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block6_1_bn[0][0]']
n)
conv4_block6_2_conv (Conv2D) (None, 14, 14, 256) 590080 ['conv4_block6_1_relu[0][0]']
conv4_block6_2_bn (BatchNormal (None, 14, 14, 256) 1024 ['conv4_block6_2_conv[0][0]']
ization)
conv4_block6_2_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block6_2_bn[0][0]']
n)
conv4_block6_3_conv (Conv2D) (None, 14, 14, 1024 263168 ['conv4_block6_2_relu[0][0]']
)
conv4_block6_3_bn (BatchNormal (None, 14, 14, 1024 4096 ['conv4_block6_3_conv[0][0]']
ization) )
conv4_block6_add (Add) (None, 14, 14, 1024 0 ['conv4_block5_out[0][0]',
) 'conv4_block6_3_bn[0][0]']
conv4_block6_out (Activation) (None, 14, 14, 1024 0 ['conv4_block6_add[0][0]']
)
conv5_block1_1_conv (Conv2D) (None, 7, 7, 512) 524800 ['conv4_block6_out[0][0]']
conv5_block1_1_bn (BatchNormal (None, 7, 7, 512) 2048 ['conv5_block1_1_conv[0][0]']
ization)
conv5_block1_1_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block1_1_bn[0][0]']
n)
conv5_block1_2_conv (Conv2D) (None, 7, 7, 512) 2359808 ['conv5_block1_1_relu[0][0]']
conv5_block1_2_bn (BatchNormal (None, 7, 7, 512) 2048 ['conv5_block1_2_conv[0][0]']
ization)
conv5_block1_2_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block1_2_bn[0][0]']
n)
conv5_block1_0_conv (Conv2D) (None, 7, 7, 2048) 2099200 ['conv4_block6_out[0][0]']
conv5_block1_3_conv (Conv2D) (None, 7, 7, 2048) 1050624 ['conv5_block1_2_relu[0][0]']
conv5_block1_0_bn (BatchNormal (None, 7, 7, 2048) 8192 ['conv5_block1_0_conv[0][0]']
ization)
conv5_block1_3_bn (BatchNormal (None, 7, 7, 2048) 8192 ['conv5_block1_3_conv[0][0]']
ization)
conv5_block1_add (Add) (None, 7, 7, 2048) 0 ['conv5_block1_0_bn[0][0]',
'conv5_block1_3_bn[0][0]']
conv5_block1_out (Activation) (None, 7, 7, 2048) 0 ['conv5_block1_add[0][0]']
conv5_block2_1_conv (Conv2D) (None, 7, 7, 512) 1049088 ['conv5_block1_out[0][0]']
conv5_block2_1_bn (BatchNormal (None, 7, 7, 512) 2048 ['conv5_block2_1_conv[0][0]']
ization)
conv5_block2_1_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block2_1_bn[0][0]']
n)
conv5_block2_2_conv (Conv2D) (None, 7, 7, 512) 2359808 ['conv5_block2_1_relu[0][0]']
conv5_block2_2_bn (BatchNormal (None, 7, 7, 512) 2048 ['conv5_block2_2_conv[0][0]']
ization)
conv5_block2_2_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block2_2_bn[0][0]']
n)
conv5_block2_3_conv (Conv2D) (None, 7, 7, 2048) 1050624 ['conv5_block2_2_relu[0][0]']
conv5_block2_3_bn (BatchNormal (None, 7, 7, 2048) 8192 ['conv5_block2_3_conv[0][0]']
ization)
conv5_block2_add (Add) (None, 7, 7, 2048) 0 ['conv5_block1_out[0][0]',
'conv5_block2_3_bn[0][0]']
conv5_block2_out (Activation) (None, 7, 7, 2048) 0 ['conv5_block2_add[0][0]']
conv5_block3_1_conv (Conv2D) (None, 7, 7, 512) 1049088 ['conv5_block2_out[0][0]']
conv5_block3_1_bn (BatchNormal (None, 7, 7, 512) 2048 ['conv5_block3_1_conv[0][0]']
ization)
conv5_block3_1_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block3_1_bn[0][0]']
n)
conv5_block3_2_conv (Conv2D) (None, 7, 7, 512) 2359808 ['conv5_block3_1_relu[0][0]']
conv5_block3_2_bn (BatchNormal (None, 7, 7, 512) 2048 ['conv5_block3_2_conv[0][0]']
ization)
conv5_block3_2_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block3_2_bn[0][0]']
n)
conv5_block3_3_conv (Conv2D) (None, 7, 7, 2048) 1050624 ['conv5_block3_2_relu[0][0]']
conv5_block3_3_bn (BatchNormal (None, 7, 7, 2048) 8192 ['conv5_block3_3_conv[0][0]']
ization)
conv5_block3_add (Add) (None, 7, 7, 2048) 0 ['conv5_block2_out[0][0]',
'conv5_block3_3_bn[0][0]']
conv5_block3_out (Activation) (None, 7, 7, 2048) 0 ['conv5_block3_add[0][0]']
==================================================================================================
Total params: 23,587,712
Trainable params: 23,534,592
Non-trainable params: 53,120
__________________________________________________________________________________________________
modelResnet50 = Sequential()
modelResnet50.add(resnet)
modelResnet50.add( Flatten())
modelResnet50.add( Dense(units=32, activation = 'relu' , input_dim = 7 * 7 * 2048))
modelResnet50.add( Dense(units=3, activation = 'softmax' ) )
modelResnet50.summary()
Model: "sequential_22"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
resnet50 (Functional) (None, 7, 7, 2048) 23587712
flatten_18 (Flatten) (None, 100352) 0
dense_36 (Dense) (None, 32) 3211296
dense_37 (Dense) (None, 3) 99
=================================================================
Total params: 26,799,107
Trainable params: 26,745,987
Non-trainable params: 53,120
_________________________________________________________________
modelResnet50.compile( optimizer = 'rmsprop', loss = 'categorical_crossentropy', metrics = [ 'accuracy', Precision(), Recall()] )
historyResnet50 = modelResnet50.fit( train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 41s 621ms/step - loss: 5.8635 - accuracy: 0.6421 - precision_19: 0.7596 - recall_19: 0.4401 - val_loss: 1.0985 - val_accuracy: 0.3583 - val_precision_19: 0.0000e+00 - val_recall_19: 0.0000e+00 Epoch 2/40 23/23 [==============================] - 10s 445ms/step - loss: 0.5606 - accuracy: 0.7953 - precision_19: 0.8677 - recall_19: 0.7493 - val_loss: 1.0989 - val_accuracy: 0.3083 - val_precision_19: 0.0000e+00 - val_recall_19: 0.0000e+00 Epoch 3/40 23/23 [==============================] - 10s 442ms/step - loss: 1.0685 - accuracy: 0.8106 - precision_19: 0.8512 - recall_19: 0.7730 - val_loss: 3293.8306 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333 Epoch 4/40 23/23 [==============================] - 10s 445ms/step - loss: 0.7759 - accuracy: 0.8802 - precision_19: 0.8957 - recall_19: 0.8607 - val_loss: 1.4093 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 5/40 23/23 [==============================] - 12s 503ms/step - loss: 0.7931 - accuracy: 0.8788 - precision_19: 0.8947 - recall_19: 0.8635 - val_loss: 1289.1473 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333 Epoch 6/40 23/23 [==============================] - 11s 455ms/step - loss: 0.1628 - accuracy: 0.9415 - precision_19: 0.9520 - recall_19: 0.9387 - val_loss: 3.1296 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 7/40 23/23 [==============================] - 10s 441ms/step - loss: 0.2387 - accuracy: 0.9429 - precision_19: 0.9452 - recall_19: 0.9373 - val_loss: 2.8906 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 8/40 23/23 [==============================] - 10s 438ms/step - loss: 0.0656 - accuracy: 0.9805 - precision_19: 0.9818 - recall_19: 0.9791 - val_loss: 4.2361 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 9/40 23/23 [==============================] - 10s 447ms/step - loss: 0.8262 - accuracy: 0.8942 - precision_19: 0.8999 - recall_19: 0.8886 - val_loss: 9.8643 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333 Epoch 10/40 23/23 [==============================] - 10s 448ms/step - loss: 0.4248 - accuracy: 0.9081 - precision_19: 0.9220 - recall_19: 0.9053 - val_loss: 325.9099 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333 Epoch 11/40 23/23 [==============================] - 10s 429ms/step - loss: 0.0848 - accuracy: 0.9805 - precision_19: 0.9805 - recall_19: 0.9791 - val_loss: 2.0679 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 12/40 23/23 [==============================] - 11s 467ms/step - loss: 0.2379 - accuracy: 0.9443 - precision_19: 0.9533 - recall_19: 0.9387 - val_loss: 16.2153 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 13/40 23/23 [==============================] - 10s 441ms/step - loss: 0.0443 - accuracy: 0.9861 - precision_19: 0.9861 - recall_19: 0.9847 - val_loss: 1.7106 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 14/40 23/23 [==============================] - 10s 442ms/step - loss: 0.1389 - accuracy: 0.9763 - precision_19: 0.9763 - recall_19: 0.9749 - val_loss: 2.6960 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 15/40 23/23 [==============================] - 13s 582ms/step - loss: 0.1569 - accuracy: 0.9610 - precision_19: 0.9623 - recall_19: 0.9596 - val_loss: 2.1198 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 16/40 23/23 [==============================] - 11s 459ms/step - loss: 0.0786 - accuracy: 0.9680 - precision_19: 0.9719 - recall_19: 0.9652 - val_loss: 1.3643 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 17/40 23/23 [==============================] - 10s 435ms/step - loss: 0.0825 - accuracy: 0.9819 - precision_19: 0.9832 - recall_19: 0.9791 - val_loss: 1.4853 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 18/40 23/23 [==============================] - 11s 482ms/step - loss: 0.1159 - accuracy: 0.9735 - precision_19: 0.9735 - recall_19: 0.9735 - val_loss: 1.5969 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083 Epoch 19/40 23/23 [==============================] - 11s 458ms/step - loss: 0.0024 - accuracy: 1.0000 - precision_19: 1.0000 - recall_19: 1.0000 - val_loss: 1.5492 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(historyResnet50.history['accuracy'])
plt.plot(historyResnet50.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(historyResnet50.history['precision_19'])
plt.plot(historyResnet50.history['val_precision_19'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(historyResnet50.history['recall_19'])
plt.plot(historyResnet50.history['val_recall_19'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = modelResnet50.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 191ms/step - loss: 1.4777 - accuracy: 0.3542 - precision_19: 0.3542 - recall_19: 0.3542 validation_acc: 35.42 validation_loss: 1.48 validation_precision: 0.35 validation_recall: 0.35
DenseNet
denseNet = DenseNet121(weights='imagenet', include_top=False, input_shape=(224,224,3))
denseNet.summary()
Downloading data from https://storage.googleapis.com/tensorflow/keras-applications/densenet/densenet121_weights_tf_dim_ordering_tf_kernels_notop.h5
29084464/29084464 [==============================] - 1s 0us/step
Model: "densenet121"
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
input_3 (InputLayer) [(None, 224, 224, 3 0 []
)]
zero_padding2d (ZeroPadding2D) (None, 230, 230, 3) 0 ['input_3[0][0]']
conv1/conv (Conv2D) (None, 112, 112, 64 9408 ['zero_padding2d[0][0]']
)
conv1/bn (BatchNormalization) (None, 112, 112, 64 256 ['conv1/conv[0][0]']
)
conv1/relu (Activation) (None, 112, 112, 64 0 ['conv1/bn[0][0]']
)
zero_padding2d_1 (ZeroPadding2 (None, 114, 114, 64 0 ['conv1/relu[0][0]']
D) )
pool1 (MaxPooling2D) (None, 56, 56, 64) 0 ['zero_padding2d_1[0][0]']
conv2_block1_0_bn (BatchNormal (None, 56, 56, 64) 256 ['pool1[0][0]']
ization)
conv2_block1_0_relu (Activatio (None, 56, 56, 64) 0 ['conv2_block1_0_bn[0][0]']
n)
conv2_block1_1_conv (Conv2D) (None, 56, 56, 128) 8192 ['conv2_block1_0_relu[0][0]']
conv2_block1_1_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block1_1_conv[0][0]']
ization)
conv2_block1_1_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block1_1_bn[0][0]']
n)
conv2_block1_2_conv (Conv2D) (None, 56, 56, 32) 36864 ['conv2_block1_1_relu[0][0]']
conv2_block1_concat (Concatena (None, 56, 56, 96) 0 ['pool1[0][0]',
te) 'conv2_block1_2_conv[0][0]']
conv2_block2_0_bn (BatchNormal (None, 56, 56, 96) 384 ['conv2_block1_concat[0][0]']
ization)
conv2_block2_0_relu (Activatio (None, 56, 56, 96) 0 ['conv2_block2_0_bn[0][0]']
n)
conv2_block2_1_conv (Conv2D) (None, 56, 56, 128) 12288 ['conv2_block2_0_relu[0][0]']
conv2_block2_1_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block2_1_conv[0][0]']
ization)
conv2_block2_1_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block2_1_bn[0][0]']
n)
conv2_block2_2_conv (Conv2D) (None, 56, 56, 32) 36864 ['conv2_block2_1_relu[0][0]']
conv2_block2_concat (Concatena (None, 56, 56, 128) 0 ['conv2_block1_concat[0][0]',
te) 'conv2_block2_2_conv[0][0]']
conv2_block3_0_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block2_concat[0][0]']
ization)
conv2_block3_0_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block3_0_bn[0][0]']
n)
conv2_block3_1_conv (Conv2D) (None, 56, 56, 128) 16384 ['conv2_block3_0_relu[0][0]']
conv2_block3_1_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block3_1_conv[0][0]']
ization)
conv2_block3_1_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block3_1_bn[0][0]']
n)
conv2_block3_2_conv (Conv2D) (None, 56, 56, 32) 36864 ['conv2_block3_1_relu[0][0]']
conv2_block3_concat (Concatena (None, 56, 56, 160) 0 ['conv2_block2_concat[0][0]',
te) 'conv2_block3_2_conv[0][0]']
conv2_block4_0_bn (BatchNormal (None, 56, 56, 160) 640 ['conv2_block3_concat[0][0]']
ization)
conv2_block4_0_relu (Activatio (None, 56, 56, 160) 0 ['conv2_block4_0_bn[0][0]']
n)
conv2_block4_1_conv (Conv2D) (None, 56, 56, 128) 20480 ['conv2_block4_0_relu[0][0]']
conv2_block4_1_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block4_1_conv[0][0]']
ization)
conv2_block4_1_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block4_1_bn[0][0]']
n)
conv2_block4_2_conv (Conv2D) (None, 56, 56, 32) 36864 ['conv2_block4_1_relu[0][0]']
conv2_block4_concat (Concatena (None, 56, 56, 192) 0 ['conv2_block3_concat[0][0]',
te) 'conv2_block4_2_conv[0][0]']
conv2_block5_0_bn (BatchNormal (None, 56, 56, 192) 768 ['conv2_block4_concat[0][0]']
ization)
conv2_block5_0_relu (Activatio (None, 56, 56, 192) 0 ['conv2_block5_0_bn[0][0]']
n)
conv2_block5_1_conv (Conv2D) (None, 56, 56, 128) 24576 ['conv2_block5_0_relu[0][0]']
conv2_block5_1_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block5_1_conv[0][0]']
ization)
conv2_block5_1_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block5_1_bn[0][0]']
n)
conv2_block5_2_conv (Conv2D) (None, 56, 56, 32) 36864 ['conv2_block5_1_relu[0][0]']
conv2_block5_concat (Concatena (None, 56, 56, 224) 0 ['conv2_block4_concat[0][0]',
te) 'conv2_block5_2_conv[0][0]']
conv2_block6_0_bn (BatchNormal (None, 56, 56, 224) 896 ['conv2_block5_concat[0][0]']
ization)
conv2_block6_0_relu (Activatio (None, 56, 56, 224) 0 ['conv2_block6_0_bn[0][0]']
n)
conv2_block6_1_conv (Conv2D) (None, 56, 56, 128) 28672 ['conv2_block6_0_relu[0][0]']
conv2_block6_1_bn (BatchNormal (None, 56, 56, 128) 512 ['conv2_block6_1_conv[0][0]']
ization)
conv2_block6_1_relu (Activatio (None, 56, 56, 128) 0 ['conv2_block6_1_bn[0][0]']
n)
conv2_block6_2_conv (Conv2D) (None, 56, 56, 32) 36864 ['conv2_block6_1_relu[0][0]']
conv2_block6_concat (Concatena (None, 56, 56, 256) 0 ['conv2_block5_concat[0][0]',
te) 'conv2_block6_2_conv[0][0]']
pool2_bn (BatchNormalization) (None, 56, 56, 256) 1024 ['conv2_block6_concat[0][0]']
pool2_relu (Activation) (None, 56, 56, 256) 0 ['pool2_bn[0][0]']
pool2_conv (Conv2D) (None, 56, 56, 128) 32768 ['pool2_relu[0][0]']
pool2_pool (AveragePooling2D) (None, 28, 28, 128) 0 ['pool2_conv[0][0]']
conv3_block1_0_bn (BatchNormal (None, 28, 28, 128) 512 ['pool2_pool[0][0]']
ization)
conv3_block1_0_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block1_0_bn[0][0]']
n)
conv3_block1_1_conv (Conv2D) (None, 28, 28, 128) 16384 ['conv3_block1_0_relu[0][0]']
conv3_block1_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block1_1_conv[0][0]']
ization)
conv3_block1_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block1_1_bn[0][0]']
n)
conv3_block1_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block1_1_relu[0][0]']
conv3_block1_concat (Concatena (None, 28, 28, 160) 0 ['pool2_pool[0][0]',
te) 'conv3_block1_2_conv[0][0]']
conv3_block2_0_bn (BatchNormal (None, 28, 28, 160) 640 ['conv3_block1_concat[0][0]']
ization)
conv3_block2_0_relu (Activatio (None, 28, 28, 160) 0 ['conv3_block2_0_bn[0][0]']
n)
conv3_block2_1_conv (Conv2D) (None, 28, 28, 128) 20480 ['conv3_block2_0_relu[0][0]']
conv3_block2_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block2_1_conv[0][0]']
ization)
conv3_block2_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block2_1_bn[0][0]']
n)
conv3_block2_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block2_1_relu[0][0]']
conv3_block2_concat (Concatena (None, 28, 28, 192) 0 ['conv3_block1_concat[0][0]',
te) 'conv3_block2_2_conv[0][0]']
conv3_block3_0_bn (BatchNormal (None, 28, 28, 192) 768 ['conv3_block2_concat[0][0]']
ization)
conv3_block3_0_relu (Activatio (None, 28, 28, 192) 0 ['conv3_block3_0_bn[0][0]']
n)
conv3_block3_1_conv (Conv2D) (None, 28, 28, 128) 24576 ['conv3_block3_0_relu[0][0]']
conv3_block3_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block3_1_conv[0][0]']
ization)
conv3_block3_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block3_1_bn[0][0]']
n)
conv3_block3_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block3_1_relu[0][0]']
conv3_block3_concat (Concatena (None, 28, 28, 224) 0 ['conv3_block2_concat[0][0]',
te) 'conv3_block3_2_conv[0][0]']
conv3_block4_0_bn (BatchNormal (None, 28, 28, 224) 896 ['conv3_block3_concat[0][0]']
ization)
conv3_block4_0_relu (Activatio (None, 28, 28, 224) 0 ['conv3_block4_0_bn[0][0]']
n)
conv3_block4_1_conv (Conv2D) (None, 28, 28, 128) 28672 ['conv3_block4_0_relu[0][0]']
conv3_block4_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block4_1_conv[0][0]']
ization)
conv3_block4_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block4_1_bn[0][0]']
n)
conv3_block4_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block4_1_relu[0][0]']
conv3_block4_concat (Concatena (None, 28, 28, 256) 0 ['conv3_block3_concat[0][0]',
te) 'conv3_block4_2_conv[0][0]']
conv3_block5_0_bn (BatchNormal (None, 28, 28, 256) 1024 ['conv3_block4_concat[0][0]']
ization)
conv3_block5_0_relu (Activatio (None, 28, 28, 256) 0 ['conv3_block5_0_bn[0][0]']
n)
conv3_block5_1_conv (Conv2D) (None, 28, 28, 128) 32768 ['conv3_block5_0_relu[0][0]']
conv3_block5_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block5_1_conv[0][0]']
ization)
conv3_block5_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block5_1_bn[0][0]']
n)
conv3_block5_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block5_1_relu[0][0]']
conv3_block5_concat (Concatena (None, 28, 28, 288) 0 ['conv3_block4_concat[0][0]',
te) 'conv3_block5_2_conv[0][0]']
conv3_block6_0_bn (BatchNormal (None, 28, 28, 288) 1152 ['conv3_block5_concat[0][0]']
ization)
conv3_block6_0_relu (Activatio (None, 28, 28, 288) 0 ['conv3_block6_0_bn[0][0]']
n)
conv3_block6_1_conv (Conv2D) (None, 28, 28, 128) 36864 ['conv3_block6_0_relu[0][0]']
conv3_block6_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block6_1_conv[0][0]']
ization)
conv3_block6_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block6_1_bn[0][0]']
n)
conv3_block6_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block6_1_relu[0][0]']
conv3_block6_concat (Concatena (None, 28, 28, 320) 0 ['conv3_block5_concat[0][0]',
te) 'conv3_block6_2_conv[0][0]']
conv3_block7_0_bn (BatchNormal (None, 28, 28, 320) 1280 ['conv3_block6_concat[0][0]']
ization)
conv3_block7_0_relu (Activatio (None, 28, 28, 320) 0 ['conv3_block7_0_bn[0][0]']
n)
conv3_block7_1_conv (Conv2D) (None, 28, 28, 128) 40960 ['conv3_block7_0_relu[0][0]']
conv3_block7_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block7_1_conv[0][0]']
ization)
conv3_block7_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block7_1_bn[0][0]']
n)
conv3_block7_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block7_1_relu[0][0]']
conv3_block7_concat (Concatena (None, 28, 28, 352) 0 ['conv3_block6_concat[0][0]',
te) 'conv3_block7_2_conv[0][0]']
conv3_block8_0_bn (BatchNormal (None, 28, 28, 352) 1408 ['conv3_block7_concat[0][0]']
ization)
conv3_block8_0_relu (Activatio (None, 28, 28, 352) 0 ['conv3_block8_0_bn[0][0]']
n)
conv3_block8_1_conv (Conv2D) (None, 28, 28, 128) 45056 ['conv3_block8_0_relu[0][0]']
conv3_block8_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block8_1_conv[0][0]']
ization)
conv3_block8_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block8_1_bn[0][0]']
n)
conv3_block8_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block8_1_relu[0][0]']
conv3_block8_concat (Concatena (None, 28, 28, 384) 0 ['conv3_block7_concat[0][0]',
te) 'conv3_block8_2_conv[0][0]']
conv3_block9_0_bn (BatchNormal (None, 28, 28, 384) 1536 ['conv3_block8_concat[0][0]']
ization)
conv3_block9_0_relu (Activatio (None, 28, 28, 384) 0 ['conv3_block9_0_bn[0][0]']
n)
conv3_block9_1_conv (Conv2D) (None, 28, 28, 128) 49152 ['conv3_block9_0_relu[0][0]']
conv3_block9_1_bn (BatchNormal (None, 28, 28, 128) 512 ['conv3_block9_1_conv[0][0]']
ization)
conv3_block9_1_relu (Activatio (None, 28, 28, 128) 0 ['conv3_block9_1_bn[0][0]']
n)
conv3_block9_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block9_1_relu[0][0]']
conv3_block9_concat (Concatena (None, 28, 28, 416) 0 ['conv3_block8_concat[0][0]',
te) 'conv3_block9_2_conv[0][0]']
conv3_block10_0_bn (BatchNorma (None, 28, 28, 416) 1664 ['conv3_block9_concat[0][0]']
lization)
conv3_block10_0_relu (Activati (None, 28, 28, 416) 0 ['conv3_block10_0_bn[0][0]']
on)
conv3_block10_1_conv (Conv2D) (None, 28, 28, 128) 53248 ['conv3_block10_0_relu[0][0]']
conv3_block10_1_bn (BatchNorma (None, 28, 28, 128) 512 ['conv3_block10_1_conv[0][0]']
lization)
conv3_block10_1_relu (Activati (None, 28, 28, 128) 0 ['conv3_block10_1_bn[0][0]']
on)
conv3_block10_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block10_1_relu[0][0]']
conv3_block10_concat (Concaten (None, 28, 28, 448) 0 ['conv3_block9_concat[0][0]',
ate) 'conv3_block10_2_conv[0][0]']
conv3_block11_0_bn (BatchNorma (None, 28, 28, 448) 1792 ['conv3_block10_concat[0][0]']
lization)
conv3_block11_0_relu (Activati (None, 28, 28, 448) 0 ['conv3_block11_0_bn[0][0]']
on)
conv3_block11_1_conv (Conv2D) (None, 28, 28, 128) 57344 ['conv3_block11_0_relu[0][0]']
conv3_block11_1_bn (BatchNorma (None, 28, 28, 128) 512 ['conv3_block11_1_conv[0][0]']
lization)
conv3_block11_1_relu (Activati (None, 28, 28, 128) 0 ['conv3_block11_1_bn[0][0]']
on)
conv3_block11_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block11_1_relu[0][0]']
conv3_block11_concat (Concaten (None, 28, 28, 480) 0 ['conv3_block10_concat[0][0]',
ate) 'conv3_block11_2_conv[0][0]']
conv3_block12_0_bn (BatchNorma (None, 28, 28, 480) 1920 ['conv3_block11_concat[0][0]']
lization)
conv3_block12_0_relu (Activati (None, 28, 28, 480) 0 ['conv3_block12_0_bn[0][0]']
on)
conv3_block12_1_conv (Conv2D) (None, 28, 28, 128) 61440 ['conv3_block12_0_relu[0][0]']
conv3_block12_1_bn (BatchNorma (None, 28, 28, 128) 512 ['conv3_block12_1_conv[0][0]']
lization)
conv3_block12_1_relu (Activati (None, 28, 28, 128) 0 ['conv3_block12_1_bn[0][0]']
on)
conv3_block12_2_conv (Conv2D) (None, 28, 28, 32) 36864 ['conv3_block12_1_relu[0][0]']
conv3_block12_concat (Concaten (None, 28, 28, 512) 0 ['conv3_block11_concat[0][0]',
ate) 'conv3_block12_2_conv[0][0]']
pool3_bn (BatchNormalization) (None, 28, 28, 512) 2048 ['conv3_block12_concat[0][0]']
pool3_relu (Activation) (None, 28, 28, 512) 0 ['pool3_bn[0][0]']
pool3_conv (Conv2D) (None, 28, 28, 256) 131072 ['pool3_relu[0][0]']
pool3_pool (AveragePooling2D) (None, 14, 14, 256) 0 ['pool3_conv[0][0]']
conv4_block1_0_bn (BatchNormal (None, 14, 14, 256) 1024 ['pool3_pool[0][0]']
ization)
conv4_block1_0_relu (Activatio (None, 14, 14, 256) 0 ['conv4_block1_0_bn[0][0]']
n)
conv4_block1_1_conv (Conv2D) (None, 14, 14, 128) 32768 ['conv4_block1_0_relu[0][0]']
conv4_block1_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block1_1_conv[0][0]']
ization)
conv4_block1_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block1_1_bn[0][0]']
n)
conv4_block1_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block1_1_relu[0][0]']
conv4_block1_concat (Concatena (None, 14, 14, 288) 0 ['pool3_pool[0][0]',
te) 'conv4_block1_2_conv[0][0]']
conv4_block2_0_bn (BatchNormal (None, 14, 14, 288) 1152 ['conv4_block1_concat[0][0]']
ization)
conv4_block2_0_relu (Activatio (None, 14, 14, 288) 0 ['conv4_block2_0_bn[0][0]']
n)
conv4_block2_1_conv (Conv2D) (None, 14, 14, 128) 36864 ['conv4_block2_0_relu[0][0]']
conv4_block2_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block2_1_conv[0][0]']
ization)
conv4_block2_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block2_1_bn[0][0]']
n)
conv4_block2_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block2_1_relu[0][0]']
conv4_block2_concat (Concatena (None, 14, 14, 320) 0 ['conv4_block1_concat[0][0]',
te) 'conv4_block2_2_conv[0][0]']
conv4_block3_0_bn (BatchNormal (None, 14, 14, 320) 1280 ['conv4_block2_concat[0][0]']
ization)
conv4_block3_0_relu (Activatio (None, 14, 14, 320) 0 ['conv4_block3_0_bn[0][0]']
n)
conv4_block3_1_conv (Conv2D) (None, 14, 14, 128) 40960 ['conv4_block3_0_relu[0][0]']
conv4_block3_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block3_1_conv[0][0]']
ization)
conv4_block3_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block3_1_bn[0][0]']
n)
conv4_block3_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block3_1_relu[0][0]']
conv4_block3_concat (Concatena (None, 14, 14, 352) 0 ['conv4_block2_concat[0][0]',
te) 'conv4_block3_2_conv[0][0]']
conv4_block4_0_bn (BatchNormal (None, 14, 14, 352) 1408 ['conv4_block3_concat[0][0]']
ization)
conv4_block4_0_relu (Activatio (None, 14, 14, 352) 0 ['conv4_block4_0_bn[0][0]']
n)
conv4_block4_1_conv (Conv2D) (None, 14, 14, 128) 45056 ['conv4_block4_0_relu[0][0]']
conv4_block4_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block4_1_conv[0][0]']
ization)
conv4_block4_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block4_1_bn[0][0]']
n)
conv4_block4_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block4_1_relu[0][0]']
conv4_block4_concat (Concatena (None, 14, 14, 384) 0 ['conv4_block3_concat[0][0]',
te) 'conv4_block4_2_conv[0][0]']
conv4_block5_0_bn (BatchNormal (None, 14, 14, 384) 1536 ['conv4_block4_concat[0][0]']
ization)
conv4_block5_0_relu (Activatio (None, 14, 14, 384) 0 ['conv4_block5_0_bn[0][0]']
n)
conv4_block5_1_conv (Conv2D) (None, 14, 14, 128) 49152 ['conv4_block5_0_relu[0][0]']
conv4_block5_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block5_1_conv[0][0]']
ization)
conv4_block5_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block5_1_bn[0][0]']
n)
conv4_block5_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block5_1_relu[0][0]']
conv4_block5_concat (Concatena (None, 14, 14, 416) 0 ['conv4_block4_concat[0][0]',
te) 'conv4_block5_2_conv[0][0]']
conv4_block6_0_bn (BatchNormal (None, 14, 14, 416) 1664 ['conv4_block5_concat[0][0]']
ization)
conv4_block6_0_relu (Activatio (None, 14, 14, 416) 0 ['conv4_block6_0_bn[0][0]']
n)
conv4_block6_1_conv (Conv2D) (None, 14, 14, 128) 53248 ['conv4_block6_0_relu[0][0]']
conv4_block6_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block6_1_conv[0][0]']
ization)
conv4_block6_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block6_1_bn[0][0]']
n)
conv4_block6_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block6_1_relu[0][0]']
conv4_block6_concat (Concatena (None, 14, 14, 448) 0 ['conv4_block5_concat[0][0]',
te) 'conv4_block6_2_conv[0][0]']
conv4_block7_0_bn (BatchNormal (None, 14, 14, 448) 1792 ['conv4_block6_concat[0][0]']
ization)
conv4_block7_0_relu (Activatio (None, 14, 14, 448) 0 ['conv4_block7_0_bn[0][0]']
n)
conv4_block7_1_conv (Conv2D) (None, 14, 14, 128) 57344 ['conv4_block7_0_relu[0][0]']
conv4_block7_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block7_1_conv[0][0]']
ization)
conv4_block7_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block7_1_bn[0][0]']
n)
conv4_block7_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block7_1_relu[0][0]']
conv4_block7_concat (Concatena (None, 14, 14, 480) 0 ['conv4_block6_concat[0][0]',
te) 'conv4_block7_2_conv[0][0]']
conv4_block8_0_bn (BatchNormal (None, 14, 14, 480) 1920 ['conv4_block7_concat[0][0]']
ization)
conv4_block8_0_relu (Activatio (None, 14, 14, 480) 0 ['conv4_block8_0_bn[0][0]']
n)
conv4_block8_1_conv (Conv2D) (None, 14, 14, 128) 61440 ['conv4_block8_0_relu[0][0]']
conv4_block8_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block8_1_conv[0][0]']
ization)
conv4_block8_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block8_1_bn[0][0]']
n)
conv4_block8_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block8_1_relu[0][0]']
conv4_block8_concat (Concatena (None, 14, 14, 512) 0 ['conv4_block7_concat[0][0]',
te) 'conv4_block8_2_conv[0][0]']
conv4_block9_0_bn (BatchNormal (None, 14, 14, 512) 2048 ['conv4_block8_concat[0][0]']
ization)
conv4_block9_0_relu (Activatio (None, 14, 14, 512) 0 ['conv4_block9_0_bn[0][0]']
n)
conv4_block9_1_conv (Conv2D) (None, 14, 14, 128) 65536 ['conv4_block9_0_relu[0][0]']
conv4_block9_1_bn (BatchNormal (None, 14, 14, 128) 512 ['conv4_block9_1_conv[0][0]']
ization)
conv4_block9_1_relu (Activatio (None, 14, 14, 128) 0 ['conv4_block9_1_bn[0][0]']
n)
conv4_block9_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block9_1_relu[0][0]']
conv4_block9_concat (Concatena (None, 14, 14, 544) 0 ['conv4_block8_concat[0][0]',
te) 'conv4_block9_2_conv[0][0]']
conv4_block10_0_bn (BatchNorma (None, 14, 14, 544) 2176 ['conv4_block9_concat[0][0]']
lization)
conv4_block10_0_relu (Activati (None, 14, 14, 544) 0 ['conv4_block10_0_bn[0][0]']
on)
conv4_block10_1_conv (Conv2D) (None, 14, 14, 128) 69632 ['conv4_block10_0_relu[0][0]']
conv4_block10_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block10_1_conv[0][0]']
lization)
conv4_block10_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block10_1_bn[0][0]']
on)
conv4_block10_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block10_1_relu[0][0]']
conv4_block10_concat (Concaten (None, 14, 14, 576) 0 ['conv4_block9_concat[0][0]',
ate) 'conv4_block10_2_conv[0][0]']
conv4_block11_0_bn (BatchNorma (None, 14, 14, 576) 2304 ['conv4_block10_concat[0][0]']
lization)
conv4_block11_0_relu (Activati (None, 14, 14, 576) 0 ['conv4_block11_0_bn[0][0]']
on)
conv4_block11_1_conv (Conv2D) (None, 14, 14, 128) 73728 ['conv4_block11_0_relu[0][0]']
conv4_block11_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block11_1_conv[0][0]']
lization)
conv4_block11_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block11_1_bn[0][0]']
on)
conv4_block11_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block11_1_relu[0][0]']
conv4_block11_concat (Concaten (None, 14, 14, 608) 0 ['conv4_block10_concat[0][0]',
ate) 'conv4_block11_2_conv[0][0]']
conv4_block12_0_bn (BatchNorma (None, 14, 14, 608) 2432 ['conv4_block11_concat[0][0]']
lization)
conv4_block12_0_relu (Activati (None, 14, 14, 608) 0 ['conv4_block12_0_bn[0][0]']
on)
conv4_block12_1_conv (Conv2D) (None, 14, 14, 128) 77824 ['conv4_block12_0_relu[0][0]']
conv4_block12_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block12_1_conv[0][0]']
lization)
conv4_block12_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block12_1_bn[0][0]']
on)
conv4_block12_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block12_1_relu[0][0]']
conv4_block12_concat (Concaten (None, 14, 14, 640) 0 ['conv4_block11_concat[0][0]',
ate) 'conv4_block12_2_conv[0][0]']
conv4_block13_0_bn (BatchNorma (None, 14, 14, 640) 2560 ['conv4_block12_concat[0][0]']
lization)
conv4_block13_0_relu (Activati (None, 14, 14, 640) 0 ['conv4_block13_0_bn[0][0]']
on)
conv4_block13_1_conv (Conv2D) (None, 14, 14, 128) 81920 ['conv4_block13_0_relu[0][0]']
conv4_block13_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block13_1_conv[0][0]']
lization)
conv4_block13_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block13_1_bn[0][0]']
on)
conv4_block13_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block13_1_relu[0][0]']
conv4_block13_concat (Concaten (None, 14, 14, 672) 0 ['conv4_block12_concat[0][0]',
ate) 'conv4_block13_2_conv[0][0]']
conv4_block14_0_bn (BatchNorma (None, 14, 14, 672) 2688 ['conv4_block13_concat[0][0]']
lization)
conv4_block14_0_relu (Activati (None, 14, 14, 672) 0 ['conv4_block14_0_bn[0][0]']
on)
conv4_block14_1_conv (Conv2D) (None, 14, 14, 128) 86016 ['conv4_block14_0_relu[0][0]']
conv4_block14_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block14_1_conv[0][0]']
lization)
conv4_block14_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block14_1_bn[0][0]']
on)
conv4_block14_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block14_1_relu[0][0]']
conv4_block14_concat (Concaten (None, 14, 14, 704) 0 ['conv4_block13_concat[0][0]',
ate) 'conv4_block14_2_conv[0][0]']
conv4_block15_0_bn (BatchNorma (None, 14, 14, 704) 2816 ['conv4_block14_concat[0][0]']
lization)
conv4_block15_0_relu (Activati (None, 14, 14, 704) 0 ['conv4_block15_0_bn[0][0]']
on)
conv4_block15_1_conv (Conv2D) (None, 14, 14, 128) 90112 ['conv4_block15_0_relu[0][0]']
conv4_block15_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block15_1_conv[0][0]']
lization)
conv4_block15_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block15_1_bn[0][0]']
on)
conv4_block15_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block15_1_relu[0][0]']
conv4_block15_concat (Concaten (None, 14, 14, 736) 0 ['conv4_block14_concat[0][0]',
ate) 'conv4_block15_2_conv[0][0]']
conv4_block16_0_bn (BatchNorma (None, 14, 14, 736) 2944 ['conv4_block15_concat[0][0]']
lization)
conv4_block16_0_relu (Activati (None, 14, 14, 736) 0 ['conv4_block16_0_bn[0][0]']
on)
conv4_block16_1_conv (Conv2D) (None, 14, 14, 128) 94208 ['conv4_block16_0_relu[0][0]']
conv4_block16_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block16_1_conv[0][0]']
lization)
conv4_block16_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block16_1_bn[0][0]']
on)
conv4_block16_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block16_1_relu[0][0]']
conv4_block16_concat (Concaten (None, 14, 14, 768) 0 ['conv4_block15_concat[0][0]',
ate) 'conv4_block16_2_conv[0][0]']
conv4_block17_0_bn (BatchNorma (None, 14, 14, 768) 3072 ['conv4_block16_concat[0][0]']
lization)
conv4_block17_0_relu (Activati (None, 14, 14, 768) 0 ['conv4_block17_0_bn[0][0]']
on)
conv4_block17_1_conv (Conv2D) (None, 14, 14, 128) 98304 ['conv4_block17_0_relu[0][0]']
conv4_block17_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block17_1_conv[0][0]']
lization)
conv4_block17_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block17_1_bn[0][0]']
on)
conv4_block17_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block17_1_relu[0][0]']
conv4_block17_concat (Concaten (None, 14, 14, 800) 0 ['conv4_block16_concat[0][0]',
ate) 'conv4_block17_2_conv[0][0]']
conv4_block18_0_bn (BatchNorma (None, 14, 14, 800) 3200 ['conv4_block17_concat[0][0]']
lization)
conv4_block18_0_relu (Activati (None, 14, 14, 800) 0 ['conv4_block18_0_bn[0][0]']
on)
conv4_block18_1_conv (Conv2D) (None, 14, 14, 128) 102400 ['conv4_block18_0_relu[0][0]']
conv4_block18_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block18_1_conv[0][0]']
lization)
conv4_block18_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block18_1_bn[0][0]']
on)
conv4_block18_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block18_1_relu[0][0]']
conv4_block18_concat (Concaten (None, 14, 14, 832) 0 ['conv4_block17_concat[0][0]',
ate) 'conv4_block18_2_conv[0][0]']
conv4_block19_0_bn (BatchNorma (None, 14, 14, 832) 3328 ['conv4_block18_concat[0][0]']
lization)
conv4_block19_0_relu (Activati (None, 14, 14, 832) 0 ['conv4_block19_0_bn[0][0]']
on)
conv4_block19_1_conv (Conv2D) (None, 14, 14, 128) 106496 ['conv4_block19_0_relu[0][0]']
conv4_block19_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block19_1_conv[0][0]']
lization)
conv4_block19_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block19_1_bn[0][0]']
on)
conv4_block19_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block19_1_relu[0][0]']
conv4_block19_concat (Concaten (None, 14, 14, 864) 0 ['conv4_block18_concat[0][0]',
ate) 'conv4_block19_2_conv[0][0]']
conv4_block20_0_bn (BatchNorma (None, 14, 14, 864) 3456 ['conv4_block19_concat[0][0]']
lization)
conv4_block20_0_relu (Activati (None, 14, 14, 864) 0 ['conv4_block20_0_bn[0][0]']
on)
conv4_block20_1_conv (Conv2D) (None, 14, 14, 128) 110592 ['conv4_block20_0_relu[0][0]']
conv4_block20_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block20_1_conv[0][0]']
lization)
conv4_block20_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block20_1_bn[0][0]']
on)
conv4_block20_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block20_1_relu[0][0]']
conv4_block20_concat (Concaten (None, 14, 14, 896) 0 ['conv4_block19_concat[0][0]',
ate) 'conv4_block20_2_conv[0][0]']
conv4_block21_0_bn (BatchNorma (None, 14, 14, 896) 3584 ['conv4_block20_concat[0][0]']
lization)
conv4_block21_0_relu (Activati (None, 14, 14, 896) 0 ['conv4_block21_0_bn[0][0]']
on)
conv4_block21_1_conv (Conv2D) (None, 14, 14, 128) 114688 ['conv4_block21_0_relu[0][0]']
conv4_block21_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block21_1_conv[0][0]']
lization)
conv4_block21_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block21_1_bn[0][0]']
on)
conv4_block21_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block21_1_relu[0][0]']
conv4_block21_concat (Concaten (None, 14, 14, 928) 0 ['conv4_block20_concat[0][0]',
ate) 'conv4_block21_2_conv[0][0]']
conv4_block22_0_bn (BatchNorma (None, 14, 14, 928) 3712 ['conv4_block21_concat[0][0]']
lization)
conv4_block22_0_relu (Activati (None, 14, 14, 928) 0 ['conv4_block22_0_bn[0][0]']
on)
conv4_block22_1_conv (Conv2D) (None, 14, 14, 128) 118784 ['conv4_block22_0_relu[0][0]']
conv4_block22_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block22_1_conv[0][0]']
lization)
conv4_block22_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block22_1_bn[0][0]']
on)
conv4_block22_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block22_1_relu[0][0]']
conv4_block22_concat (Concaten (None, 14, 14, 960) 0 ['conv4_block21_concat[0][0]',
ate) 'conv4_block22_2_conv[0][0]']
conv4_block23_0_bn (BatchNorma (None, 14, 14, 960) 3840 ['conv4_block22_concat[0][0]']
lization)
conv4_block23_0_relu (Activati (None, 14, 14, 960) 0 ['conv4_block23_0_bn[0][0]']
on)
conv4_block23_1_conv (Conv2D) (None, 14, 14, 128) 122880 ['conv4_block23_0_relu[0][0]']
conv4_block23_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block23_1_conv[0][0]']
lization)
conv4_block23_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block23_1_bn[0][0]']
on)
conv4_block23_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block23_1_relu[0][0]']
conv4_block23_concat (Concaten (None, 14, 14, 992) 0 ['conv4_block22_concat[0][0]',
ate) 'conv4_block23_2_conv[0][0]']
conv4_block24_0_bn (BatchNorma (None, 14, 14, 992) 3968 ['conv4_block23_concat[0][0]']
lization)
conv4_block24_0_relu (Activati (None, 14, 14, 992) 0 ['conv4_block24_0_bn[0][0]']
on)
conv4_block24_1_conv (Conv2D) (None, 14, 14, 128) 126976 ['conv4_block24_0_relu[0][0]']
conv4_block24_1_bn (BatchNorma (None, 14, 14, 128) 512 ['conv4_block24_1_conv[0][0]']
lization)
conv4_block24_1_relu (Activati (None, 14, 14, 128) 0 ['conv4_block24_1_bn[0][0]']
on)
conv4_block24_2_conv (Conv2D) (None, 14, 14, 32) 36864 ['conv4_block24_1_relu[0][0]']
conv4_block24_concat (Concaten (None, 14, 14, 1024 0 ['conv4_block23_concat[0][0]',
ate) ) 'conv4_block24_2_conv[0][0]']
pool4_bn (BatchNormalization) (None, 14, 14, 1024 4096 ['conv4_block24_concat[0][0]']
)
pool4_relu (Activation) (None, 14, 14, 1024 0 ['pool4_bn[0][0]']
)
pool4_conv (Conv2D) (None, 14, 14, 512) 524288 ['pool4_relu[0][0]']
pool4_pool (AveragePooling2D) (None, 7, 7, 512) 0 ['pool4_conv[0][0]']
conv5_block1_0_bn (BatchNormal (None, 7, 7, 512) 2048 ['pool4_pool[0][0]']
ization)
conv5_block1_0_relu (Activatio (None, 7, 7, 512) 0 ['conv5_block1_0_bn[0][0]']
n)
conv5_block1_1_conv (Conv2D) (None, 7, 7, 128) 65536 ['conv5_block1_0_relu[0][0]']
conv5_block1_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block1_1_conv[0][0]']
ization)
conv5_block1_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block1_1_bn[0][0]']
n)
conv5_block1_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block1_1_relu[0][0]']
conv5_block1_concat (Concatena (None, 7, 7, 544) 0 ['pool4_pool[0][0]',
te) 'conv5_block1_2_conv[0][0]']
conv5_block2_0_bn (BatchNormal (None, 7, 7, 544) 2176 ['conv5_block1_concat[0][0]']
ization)
conv5_block2_0_relu (Activatio (None, 7, 7, 544) 0 ['conv5_block2_0_bn[0][0]']
n)
conv5_block2_1_conv (Conv2D) (None, 7, 7, 128) 69632 ['conv5_block2_0_relu[0][0]']
conv5_block2_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block2_1_conv[0][0]']
ization)
conv5_block2_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block2_1_bn[0][0]']
n)
conv5_block2_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block2_1_relu[0][0]']
conv5_block2_concat (Concatena (None, 7, 7, 576) 0 ['conv5_block1_concat[0][0]',
te) 'conv5_block2_2_conv[0][0]']
conv5_block3_0_bn (BatchNormal (None, 7, 7, 576) 2304 ['conv5_block2_concat[0][0]']
ization)
conv5_block3_0_relu (Activatio (None, 7, 7, 576) 0 ['conv5_block3_0_bn[0][0]']
n)
conv5_block3_1_conv (Conv2D) (None, 7, 7, 128) 73728 ['conv5_block3_0_relu[0][0]']
conv5_block3_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block3_1_conv[0][0]']
ization)
conv5_block3_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block3_1_bn[0][0]']
n)
conv5_block3_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block3_1_relu[0][0]']
conv5_block3_concat (Concatena (None, 7, 7, 608) 0 ['conv5_block2_concat[0][0]',
te) 'conv5_block3_2_conv[0][0]']
conv5_block4_0_bn (BatchNormal (None, 7, 7, 608) 2432 ['conv5_block3_concat[0][0]']
ization)
conv5_block4_0_relu (Activatio (None, 7, 7, 608) 0 ['conv5_block4_0_bn[0][0]']
n)
conv5_block4_1_conv (Conv2D) (None, 7, 7, 128) 77824 ['conv5_block4_0_relu[0][0]']
conv5_block4_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block4_1_conv[0][0]']
ization)
conv5_block4_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block4_1_bn[0][0]']
n)
conv5_block4_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block4_1_relu[0][0]']
conv5_block4_concat (Concatena (None, 7, 7, 640) 0 ['conv5_block3_concat[0][0]',
te) 'conv5_block4_2_conv[0][0]']
conv5_block5_0_bn (BatchNormal (None, 7, 7, 640) 2560 ['conv5_block4_concat[0][0]']
ization)
conv5_block5_0_relu (Activatio (None, 7, 7, 640) 0 ['conv5_block5_0_bn[0][0]']
n)
conv5_block5_1_conv (Conv2D) (None, 7, 7, 128) 81920 ['conv5_block5_0_relu[0][0]']
conv5_block5_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block5_1_conv[0][0]']
ization)
conv5_block5_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block5_1_bn[0][0]']
n)
conv5_block5_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block5_1_relu[0][0]']
conv5_block5_concat (Concatena (None, 7, 7, 672) 0 ['conv5_block4_concat[0][0]',
te) 'conv5_block5_2_conv[0][0]']
conv5_block6_0_bn (BatchNormal (None, 7, 7, 672) 2688 ['conv5_block5_concat[0][0]']
ization)
conv5_block6_0_relu (Activatio (None, 7, 7, 672) 0 ['conv5_block6_0_bn[0][0]']
n)
conv5_block6_1_conv (Conv2D) (None, 7, 7, 128) 86016 ['conv5_block6_0_relu[0][0]']
conv5_block6_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block6_1_conv[0][0]']
ization)
conv5_block6_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block6_1_bn[0][0]']
n)
conv5_block6_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block6_1_relu[0][0]']
conv5_block6_concat (Concatena (None, 7, 7, 704) 0 ['conv5_block5_concat[0][0]',
te) 'conv5_block6_2_conv[0][0]']
conv5_block7_0_bn (BatchNormal (None, 7, 7, 704) 2816 ['conv5_block6_concat[0][0]']
ization)
conv5_block7_0_relu (Activatio (None, 7, 7, 704) 0 ['conv5_block7_0_bn[0][0]']
n)
conv5_block7_1_conv (Conv2D) (None, 7, 7, 128) 90112 ['conv5_block7_0_relu[0][0]']
conv5_block7_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block7_1_conv[0][0]']
ization)
conv5_block7_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block7_1_bn[0][0]']
n)
conv5_block7_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block7_1_relu[0][0]']
conv5_block7_concat (Concatena (None, 7, 7, 736) 0 ['conv5_block6_concat[0][0]',
te) 'conv5_block7_2_conv[0][0]']
conv5_block8_0_bn (BatchNormal (None, 7, 7, 736) 2944 ['conv5_block7_concat[0][0]']
ization)
conv5_block8_0_relu (Activatio (None, 7, 7, 736) 0 ['conv5_block8_0_bn[0][0]']
n)
conv5_block8_1_conv (Conv2D) (None, 7, 7, 128) 94208 ['conv5_block8_0_relu[0][0]']
conv5_block8_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block8_1_conv[0][0]']
ization)
conv5_block8_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block8_1_bn[0][0]']
n)
conv5_block8_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block8_1_relu[0][0]']
conv5_block8_concat (Concatena (None, 7, 7, 768) 0 ['conv5_block7_concat[0][0]',
te) 'conv5_block8_2_conv[0][0]']
conv5_block9_0_bn (BatchNormal (None, 7, 7, 768) 3072 ['conv5_block8_concat[0][0]']
ization)
conv5_block9_0_relu (Activatio (None, 7, 7, 768) 0 ['conv5_block9_0_bn[0][0]']
n)
conv5_block9_1_conv (Conv2D) (None, 7, 7, 128) 98304 ['conv5_block9_0_relu[0][0]']
conv5_block9_1_bn (BatchNormal (None, 7, 7, 128) 512 ['conv5_block9_1_conv[0][0]']
ization)
conv5_block9_1_relu (Activatio (None, 7, 7, 128) 0 ['conv5_block9_1_bn[0][0]']
n)
conv5_block9_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block9_1_relu[0][0]']
conv5_block9_concat (Concatena (None, 7, 7, 800) 0 ['conv5_block8_concat[0][0]',
te) 'conv5_block9_2_conv[0][0]']
conv5_block10_0_bn (BatchNorma (None, 7, 7, 800) 3200 ['conv5_block9_concat[0][0]']
lization)
conv5_block10_0_relu (Activati (None, 7, 7, 800) 0 ['conv5_block10_0_bn[0][0]']
on)
conv5_block10_1_conv (Conv2D) (None, 7, 7, 128) 102400 ['conv5_block10_0_relu[0][0]']
conv5_block10_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block10_1_conv[0][0]']
lization)
conv5_block10_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block10_1_bn[0][0]']
on)
conv5_block10_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block10_1_relu[0][0]']
conv5_block10_concat (Concaten (None, 7, 7, 832) 0 ['conv5_block9_concat[0][0]',
ate) 'conv5_block10_2_conv[0][0]']
conv5_block11_0_bn (BatchNorma (None, 7, 7, 832) 3328 ['conv5_block10_concat[0][0]']
lization)
conv5_block11_0_relu (Activati (None, 7, 7, 832) 0 ['conv5_block11_0_bn[0][0]']
on)
conv5_block11_1_conv (Conv2D) (None, 7, 7, 128) 106496 ['conv5_block11_0_relu[0][0]']
conv5_block11_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block11_1_conv[0][0]']
lization)
conv5_block11_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block11_1_bn[0][0]']
on)
conv5_block11_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block11_1_relu[0][0]']
conv5_block11_concat (Concaten (None, 7, 7, 864) 0 ['conv5_block10_concat[0][0]',
ate) 'conv5_block11_2_conv[0][0]']
conv5_block12_0_bn (BatchNorma (None, 7, 7, 864) 3456 ['conv5_block11_concat[0][0]']
lization)
conv5_block12_0_relu (Activati (None, 7, 7, 864) 0 ['conv5_block12_0_bn[0][0]']
on)
conv5_block12_1_conv (Conv2D) (None, 7, 7, 128) 110592 ['conv5_block12_0_relu[0][0]']
conv5_block12_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block12_1_conv[0][0]']
lization)
conv5_block12_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block12_1_bn[0][0]']
on)
conv5_block12_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block12_1_relu[0][0]']
conv5_block12_concat (Concaten (None, 7, 7, 896) 0 ['conv5_block11_concat[0][0]',
ate) 'conv5_block12_2_conv[0][0]']
conv5_block13_0_bn (BatchNorma (None, 7, 7, 896) 3584 ['conv5_block12_concat[0][0]']
lization)
conv5_block13_0_relu (Activati (None, 7, 7, 896) 0 ['conv5_block13_0_bn[0][0]']
on)
conv5_block13_1_conv (Conv2D) (None, 7, 7, 128) 114688 ['conv5_block13_0_relu[0][0]']
conv5_block13_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block13_1_conv[0][0]']
lization)
conv5_block13_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block13_1_bn[0][0]']
on)
conv5_block13_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block13_1_relu[0][0]']
conv5_block13_concat (Concaten (None, 7, 7, 928) 0 ['conv5_block12_concat[0][0]',
ate) 'conv5_block13_2_conv[0][0]']
conv5_block14_0_bn (BatchNorma (None, 7, 7, 928) 3712 ['conv5_block13_concat[0][0]']
lization)
conv5_block14_0_relu (Activati (None, 7, 7, 928) 0 ['conv5_block14_0_bn[0][0]']
on)
conv5_block14_1_conv (Conv2D) (None, 7, 7, 128) 118784 ['conv5_block14_0_relu[0][0]']
conv5_block14_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block14_1_conv[0][0]']
lization)
conv5_block14_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block14_1_bn[0][0]']
on)
conv5_block14_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block14_1_relu[0][0]']
conv5_block14_concat (Concaten (None, 7, 7, 960) 0 ['conv5_block13_concat[0][0]',
ate) 'conv5_block14_2_conv[0][0]']
conv5_block15_0_bn (BatchNorma (None, 7, 7, 960) 3840 ['conv5_block14_concat[0][0]']
lization)
conv5_block15_0_relu (Activati (None, 7, 7, 960) 0 ['conv5_block15_0_bn[0][0]']
on)
conv5_block15_1_conv (Conv2D) (None, 7, 7, 128) 122880 ['conv5_block15_0_relu[0][0]']
conv5_block15_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block15_1_conv[0][0]']
lization)
conv5_block15_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block15_1_bn[0][0]']
on)
conv5_block15_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block15_1_relu[0][0]']
conv5_block15_concat (Concaten (None, 7, 7, 992) 0 ['conv5_block14_concat[0][0]',
ate) 'conv5_block15_2_conv[0][0]']
conv5_block16_0_bn (BatchNorma (None, 7, 7, 992) 3968 ['conv5_block15_concat[0][0]']
lization)
conv5_block16_0_relu (Activati (None, 7, 7, 992) 0 ['conv5_block16_0_bn[0][0]']
on)
conv5_block16_1_conv (Conv2D) (None, 7, 7, 128) 126976 ['conv5_block16_0_relu[0][0]']
conv5_block16_1_bn (BatchNorma (None, 7, 7, 128) 512 ['conv5_block16_1_conv[0][0]']
lization)
conv5_block16_1_relu (Activati (None, 7, 7, 128) 0 ['conv5_block16_1_bn[0][0]']
on)
conv5_block16_2_conv (Conv2D) (None, 7, 7, 32) 36864 ['conv5_block16_1_relu[0][0]']
conv5_block16_concat (Concaten (None, 7, 7, 1024) 0 ['conv5_block15_concat[0][0]',
ate) 'conv5_block16_2_conv[0][0]']
bn (BatchNormalization) (None, 7, 7, 1024) 4096 ['conv5_block16_concat[0][0]']
relu (Activation) (None, 7, 7, 1024) 0 ['bn[0][0]']
==================================================================================================
Total params: 7,037,504
Trainable params: 6,953,856
Non-trainable params: 83,648
__________________________________________________________________________________________________
modelDenseNet = Sequential()
modelDenseNet.add(denseNet)
modelDenseNet.add( Flatten())
modelDenseNet.add( Dense(units=32, activation = 'relu' , input_dim = 7 * 7 * 1024))
modelDenseNet.add( Dense(units=3, activation = 'softmax' ) )
modelDenseNet.summary()
Model: "sequential_23"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
densenet121 (Functional) (None, 7, 7, 1024) 7037504
flatten_19 (Flatten) (None, 50176) 0
dense_38 (Dense) (None, 32) 1605664
dense_39 (Dense) (None, 3) 99
=================================================================
Total params: 8,643,267
Trainable params: 8,559,619
Non-trainable params: 83,648
_________________________________________________________________
modelDenseNet.compile( optimizer = 'rmsprop', loss = 'categorical_crossentropy', metrics = [ 'accuracy', Precision(), Recall()] )
historyDenseNet = modelDenseNet.fit( train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40 23/23 [==============================] - 89s 844ms/step - loss: 4.2559 - accuracy: 0.6281 - precision_20: 0.6357 - recall_20: 0.5808 - val_loss: 10.8503 - val_accuracy: 0.3875 - val_precision_20: 0.3849 - val_recall_20: 0.3833 Epoch 2/40 23/23 [==============================] - 11s 465ms/step - loss: 0.5516 - accuracy: 0.8384 - precision_20: 0.8543 - recall_20: 0.8329 - val_loss: 5137.0029 - val_accuracy: 0.3083 - val_precision_20: 0.3083 - val_recall_20: 0.3083 Epoch 3/40 23/23 [==============================] - 10s 447ms/step - loss: 0.6790 - accuracy: 0.8593 - precision_20: 0.8838 - recall_20: 0.8370 - val_loss: 126436.4297 - val_accuracy: 0.3083 - val_precision_20: 0.3083 - val_recall_20: 0.3083 Epoch 4/40 23/23 [==============================] - 10s 450ms/step - loss: 0.3604 - accuracy: 0.9039 - precision_20: 0.9326 - recall_20: 0.8858 - val_loss: 3461.6372 - val_accuracy: 0.3417 - val_precision_20: 0.3417 - val_recall_20: 0.3417 Epoch 5/40 23/23 [==============================] - 10s 457ms/step - loss: 0.1906 - accuracy: 0.9345 - precision_20: 0.9442 - recall_20: 0.9192 - val_loss: 1595.1185 - val_accuracy: 0.3667 - val_precision_20: 0.3667 - val_recall_20: 0.3667 Epoch 6/40 23/23 [==============================] - 10s 446ms/step - loss: 0.1406 - accuracy: 0.9554 - precision_20: 0.9607 - recall_20: 0.9526 - val_loss: 10.7806 - val_accuracy: 0.7333 - val_precision_20: 0.7333 - val_recall_20: 0.7333 Epoch 7/40 23/23 [==============================] - 11s 459ms/step - loss: 0.3797 - accuracy: 0.9262 - precision_20: 0.9310 - recall_20: 0.9206 - val_loss: 99.7670 - val_accuracy: 0.3750 - val_precision_20: 0.3644 - val_recall_20: 0.3583 Epoch 8/40 23/23 [==============================] - 10s 449ms/step - loss: 0.1120 - accuracy: 0.9666 - precision_20: 0.9690 - recall_20: 0.9582 - val_loss: 129.8813 - val_accuracy: 0.5708 - val_precision_20: 0.5799 - val_recall_20: 0.5292 Epoch 9/40 23/23 [==============================] - 10s 439ms/step - loss: 0.1511 - accuracy: 0.9526 - precision_20: 0.9615 - recall_20: 0.9401 - val_loss: 14.0523 - val_accuracy: 0.8125 - val_precision_20: 0.8125 - val_recall_20: 0.8125 Epoch 10/40 23/23 [==============================] - 11s 459ms/step - loss: 0.1447 - accuracy: 0.9568 - precision_20: 0.9607 - recall_20: 0.9540 - val_loss: 2.9135 - val_accuracy: 0.7583 - val_precision_20: 0.7583 - val_recall_20: 0.7583 Epoch 11/40 23/23 [==============================] - 11s 459ms/step - loss: 0.0385 - accuracy: 0.9875 - precision_20: 0.9902 - recall_20: 0.9833 - val_loss: 4.0311 - val_accuracy: 0.9500 - val_precision_20: 0.9540 - val_recall_20: 0.9500 Epoch 12/40 23/23 [==============================] - 11s 456ms/step - loss: 0.2195 - accuracy: 0.9554 - precision_20: 0.9606 - recall_20: 0.9513 - val_loss: 2.9740 - val_accuracy: 0.8292 - val_precision_20: 0.8722 - val_recall_20: 0.8250 Epoch 13/40 23/23 [==============================] - 11s 472ms/step - loss: 0.2578 - accuracy: 0.9540 - precision_20: 0.9632 - recall_20: 0.9485 - val_loss: 10.2736 - val_accuracy: 0.6958 - val_precision_20: 0.7581 - val_recall_20: 0.6792 Epoch 14/40 23/23 [==============================] - 10s 426ms/step - loss: 0.1092 - accuracy: 0.9680 - precision_20: 0.9730 - recall_20: 0.9554 - val_loss: 0.5421 - val_accuracy: 0.8750 - val_precision_20: 0.8771 - val_recall_20: 0.8625 Epoch 15/40 23/23 [==============================] - 10s 448ms/step - loss: 0.0664 - accuracy: 0.9777 - precision_20: 0.9818 - recall_20: 0.9763 - val_loss: 5.9433 - val_accuracy: 0.7833 - val_precision_20: 0.7866 - val_recall_20: 0.7833 Epoch 16/40 23/23 [==============================] - 11s 467ms/step - loss: 0.0698 - accuracy: 0.9805 - precision_20: 0.9818 - recall_20: 0.9777 - val_loss: 41.7536 - val_accuracy: 0.6208 - val_precision_20: 0.6208 - val_recall_20: 0.6208 Epoch 17/40 23/23 [==============================] - 11s 451ms/step - loss: 0.0990 - accuracy: 0.9763 - precision_20: 0.9777 - recall_20: 0.9749 - val_loss: 13.2540 - val_accuracy: 0.6958 - val_precision_20: 0.6946 - val_recall_20: 0.6917 Epoch 18/40 23/23 [==============================] - 11s 457ms/step - loss: 0.3234 - accuracy: 0.9485 - precision_20: 0.9497 - recall_20: 0.9457 - val_loss: 50.8204 - val_accuracy: 0.5208 - val_precision_20: 0.5066 - val_recall_20: 0.4792 Epoch 19/40 23/23 [==============================] - 11s 460ms/step - loss: 0.0244 - accuracy: 0.9916 - precision_20: 0.9916 - recall_20: 0.9916 - val_loss: 3.4960 - val_accuracy: 0.8833 - val_precision_20: 0.8927 - val_recall_20: 0.8667 Epoch 20/40 23/23 [==============================] - 10s 451ms/step - loss: 0.0884 - accuracy: 0.9694 - precision_20: 0.9720 - recall_20: 0.9680 - val_loss: 5.7612 - val_accuracy: 0.8167 - val_precision_20: 0.8178 - val_recall_20: 0.8042 Epoch 21/40 23/23 [==============================] - 10s 448ms/step - loss: 0.0536 - accuracy: 0.9861 - precision_20: 0.9874 - recall_20: 0.9819 - val_loss: 1.2667 - val_accuracy: 0.9167 - val_precision_20: 0.9163 - val_recall_20: 0.9125 Epoch 22/40 23/23 [==============================] - 11s 462ms/step - loss: 0.0879 - accuracy: 0.9749 - precision_20: 0.9816 - recall_20: 0.9680 - val_loss: 1.1883 - val_accuracy: 0.9208 - val_precision_20: 0.9247 - val_recall_20: 0.9208 Epoch 23/40 23/23 [==============================] - 11s 452ms/step - loss: 0.0309 - accuracy: 0.9903 - precision_20: 0.9902 - recall_20: 0.9833 - val_loss: 0.9257 - val_accuracy: 0.9417 - val_precision_20: 0.9417 - val_recall_20: 0.9417 Epoch 24/40 23/23 [==============================] - 11s 467ms/step - loss: 0.0067 - accuracy: 0.9986 - precision_20: 0.9986 - recall_20: 0.9986 - val_loss: 0.5900 - val_accuracy: 0.9500 - val_precision_20: 0.9500 - val_recall_20: 0.9500 Epoch 25/40 23/23 [==============================] - 11s 467ms/step - loss: 0.0471 - accuracy: 0.9861 - precision_20: 0.9861 - recall_20: 0.9861 - val_loss: 0.6355 - val_accuracy: 0.9125 - val_precision_20: 0.9163 - val_recall_20: 0.9125 Epoch 26/40 23/23 [==============================] - 10s 431ms/step - loss: 0.1449 - accuracy: 0.9694 - precision_20: 0.9720 - recall_20: 0.9680 - val_loss: 2.5493 - val_accuracy: 0.9000 - val_precision_20: 0.9038 - val_recall_20: 0.9000 Epoch 27/40 23/23 [==============================] - 11s 459ms/step - loss: 0.1328 - accuracy: 0.9847 - precision_20: 0.9847 - recall_20: 0.9833 - val_loss: 16.1571 - val_accuracy: 0.4292 - val_precision_20: 0.4292 - val_recall_20: 0.4292 Epoch 28/40 23/23 [==============================] - 10s 451ms/step - loss: 0.0353 - accuracy: 0.9903 - precision_20: 0.9944 - recall_20: 0.9875 - val_loss: 0.9448 - val_accuracy: 0.9208 - val_precision_20: 0.9198 - val_recall_20: 0.9083 Epoch 29/40 23/23 [==============================] - 11s 460ms/step - loss: 0.0713 - accuracy: 0.9847 - precision_20: 0.9847 - recall_20: 0.9833 - val_loss: 0.7496 - val_accuracy: 0.9458 - val_precision_20: 0.9458 - val_recall_20: 0.9458 Epoch 30/40 23/23 [==============================] - 11s 461ms/step - loss: 0.0492 - accuracy: 0.9903 - precision_20: 0.9903 - recall_20: 0.9903 - val_loss: 0.8086 - val_accuracy: 0.9333 - val_precision_20: 0.9333 - val_recall_20: 0.9333 Epoch 31/40 23/23 [==============================] - 10s 435ms/step - loss: 0.0378 - accuracy: 0.9889 - precision_20: 0.9888 - recall_20: 0.9875 - val_loss: 1.2742 - val_accuracy: 0.9167 - val_precision_20: 0.9205 - val_recall_20: 0.9167 Epoch 32/40 23/23 [==============================] - 11s 451ms/step - loss: 0.0282 - accuracy: 0.9903 - precision_20: 0.9903 - recall_20: 0.9903 - val_loss: 16.6628 - val_accuracy: 0.6833 - val_precision_20: 0.6849 - val_recall_20: 0.6792 Epoch 33/40 23/23 [==============================] - 10s 447ms/step - loss: 0.0766 - accuracy: 0.9805 - precision_20: 0.9805 - recall_20: 0.9805 - val_loss: 1.7627 - val_accuracy: 0.8792 - val_precision_20: 0.8787 - val_recall_20: 0.8750 Epoch 34/40 23/23 [==============================] - 11s 483ms/step - loss: 0.0162 - accuracy: 0.9916 - precision_20: 0.9916 - recall_20: 0.9916 - val_loss: 0.4428 - val_accuracy: 0.9583 - val_precision_20: 0.9583 - val_recall_20: 0.9583 Epoch 35/40 23/23 [==============================] - 14s 596ms/step - loss: 6.4121e-04 - accuracy: 1.0000 - precision_20: 1.0000 - recall_20: 1.0000 - val_loss: 0.3798 - val_accuracy: 0.9625 - val_precision_20: 0.9625 - val_recall_20: 0.9625
plt.subplots_adjust(right=1.95, left=.03)
plt.subplot(1,3,1)
plt.plot(historyDenseNet.history['accuracy'])
plt.plot(historyDenseNet.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")
plt.subplot(1,3,2)
plt.plot(historyDenseNet.history['precision_20'])
plt.plot(historyDenseNet.history['val_precision_20'])
plt.ylabel('Precision')
plt.xlabel('Epoch')
plt.subplot(1,3,3)
plt.plot(historyDenseNet.history['recall_20'])
plt.plot(historyDenseNet.history['val_recall_20'])
plt.ylabel('Recall')
plt.xlabel('')
plt.show()
test_loss, test_acc, test_precision, test_recall = modelDenseNet.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 244ms/step - loss: 0.3377 - accuracy: 0.9500 - precision_20: 0.9500 - recall_20: 0.9500 validation_acc: 95.00 validation_loss: 0.34 validation_precision: 0.95 validation_recall: 0.95
Convert notebook to html
%%shell
jupyter nbconvert --to html //content/Tasks1and2.ipynb
[NbConvertApp] Converting notebook //content/Tasks1and2.ipynb to html [NbConvertApp] Writing 969045 bytes to //content/Tasks1and2.html